0.1.10 • Published 2 years ago

leita-components-ui v0.1.10

Weekly downloads
-
License
-
Repository
github
Last release
2 years ago

Leita Components UI

Ejercicio de creación de libreria de componentes para React JS

Installation

    npm install leita-components-ui

Para usar los iconos instalar @mdi/font

    npm install @mdi/font
    import '@mdi/font/css/materialdesignicons.min.css';

Componentes

Theme

El módulo Tema abarca completamente el uso de variables CSS para la tematización en tiempo de ejecución. Esto permite algunos casos de uso realmente potentes, como un modo oscuro incorporado o paletas personalizadas para sus clientes.

    import { Theme } from 'leita-components-ui'
    <Theme primary="#2274A5" fontFamily={['Raleway', 'BlinkMacSystemFont']}>
        <div className='container'> </div>
    </Theme>

Props

NombreTipoEjemploDescripción
childrenReact.ReactNode<div>Item</div>Contenido especificado como hijo.
backgroundColorString'#fff' \| rgb(0, 0, 0)Color de backgroud de etiqueta body.
primaryString'#fff' \| rgb(0, 0, 0)Color principal del tema.
darkPrimaryString'#fff' \| rgb(0, 0, 0)Color primario oscuro.
accentString'#fff' \| rgb(0, 0, 0)Color de acento.
successString'#fff' \| rgb(0, 0, 0)Color para acción correcta.
warningString'#fff' \| rgb(0, 0, 0)Color para acción de advertencia.
dangerString'#fff' \| rgb(0, 0, 0)Color para acción de error.
whiteString'#fff' \| rgb(0, 0, 0)Color blanco.
blackString'#fff' \| rgb(0, 0, 0)Color negro.
shadowString'#fff' \| rgb(0, 0, 0)Color para sombra de elementos.
fontFamilyArray<String>['Raleway', 'BlinkMacSystemFont']Fuentes para el documento.

SideBar

Barra lateral desplegable

    import { SideBar, SideBarItem } from 'leita-components-ui'
    <SideBar title="MyApp">
        <SideBarItem label="Elemento con acción" icon="chevron-left" onClick={() => console.log('Hello')}/>
        <SideBarItem label="Item 1" icon="account" />
        <SideBarItem label="Item 2" icon="menu" />
        <SideBarItem label="Item 3" icon="dots-horizontal" />
    </SideBar>

Ejemplo de sidebar

SideBar Props

NombreTipoDescripción
childrenReact.ReactNodeContenido especificado como hijo.
titleString \| nullTexto especificado como etiqueta.

SideBarItem Props

NombreTipoDescripción
labelString \| nullTexto especificado como etiqueta.
iconString \| nullIcono perteneciente a @mdi/font

BottomNavigation

Barra inferior de opciones

    import { BottomNavigation, NavigationItem } from 'leita-components-ui'
    <BottomNavigation title="MyApp">
        <NavigationItem active icon='logout' label='Cerrar sesión' />
        <NavigationItem icon="view-list" label="Lista" />
        <NavigationItem icon="plus" label="Agregar" />
        <NavigationItem icon="account" label="Perfil" />
    </BottomNavigation>

Ejemplo de navegacion inferior

BottomNavigation Props

NombreTipoDescripción
childrenReact.ReactNodeContenido especificado como hijo.

NavigationItem Props

NombreTipoDescripción
labelString \| nullTexto especificado como etiqueta.
iconString \| nullIcono perteneciente a @mdi/font
activeBooleanIndica si el elemento se encuentra activado

Button

Comunica la accion que se producirá cuando el usuario lo toque.

    import { Button } from 'leita-components-ui'
    <Button loading label="Abrir notificacion" onClick={() => console.log('Hello')} type="danger" />
    <Button loading label="Abrir notificacion" onClick={() => console.log('Hello')} trailingIcon="account" />

Ejemplo de Boton Ejemplo de Boton

Props

NombreTipoEjemploDescripción
childrenReact.ReactNode<div>Item</div>Contenido especificado como hijo.
labelString \| null-Texto especificado como etiqueta.
classNameString \| null-Clase css personalizada.
disabledBoolean-Hace que el boton se inhabilite.
fullWidthBoolean-Hace que el boton ocupe todo el ancho disponible.
iconString \| null-Icono derecho perteneciente a @mdi/font
loadingBoolean-Activa animacion de carga del boton.
trailingIconString \| null-Icono izquierdo perteneciente a @mdi/font
typeStringprimary \| danger \| primary-outline \| dark-outline \| dark \| link \| link-primary \| link-darkIndica el estilo del boton.

RadioButton

Permite al ususario seleccionar unicamente una opción.

    import { RadioButton } from 'leita-components-ui'
    <div style={{ display: 'flex', flexDirection: 'row', gap: '10px', margin: '10px' }}>
        <RadioButton label="Prueba2" id="prueba2" value="2" disabled name="test" onChange={(e) => console.log(e.target.value)}/>
        <RadioButton label="Prueba3" id="prueba3" value="3" name="test" checked onChange={(e) => console.log(e.target.value)}/>
        <RadioButton label="Prueba4" id="prueba4" value="4" name="test" onChange={(e) => console.log(e.target.value)}/>
    </div>

Ejemplo de radio buttons

Props

Sin propiedades especiales.

TextField

Permite a los usuarios ingresar editar y seleccionar texto.

    import { TextField } from 'leita-components-ui'
    <TextField
        icon='account'
        label="Prueba"
        id="prueba"
        value="hola"
        onChange={(e) => console.log(e)}
    />

Ejemplo de textfield

Props

NombreTipoDescripción
labelStringTexto especificado como etiqueta.
valueString \| nullValor de entrada
typehtml valuesValores que puede recibir el textfield.
iconString \| nullIcono perteneciente a @mdi/font
disabledBooleanHace que el textfield se inhabilite.
idStringIdentificador unico del textfield.

TextArea

Permite a los usuarios ingresar editar y seleccionar texto.

    import { TextArea } from 'leita-components-ui'
    <TextArea label="Prueba" id="area" value="Lorem ipsum dolor..." onChange={(e) => console.log(e)}/>

Ejemplo de textfield

Props

NombreTipoDescripción
labelStringTexto especificado como etiqueta.
valueString \| nullValor de entrada.
typehtml valuesValores que puede recibir el textarea.
iconString \| nullIcono perteneciente a @mdi/font
disabledBooleanHace que el textarea se inhabilite.
idStringIdentificador unico del textarea.

Select

Permite a los usuarios seleccionar opciones listadas.

    import { Select } from 'leita-components-ui'
    <Select
        id={"comida"}
        label="Comida"
        options={[{ label: 'pizza', value: '1'}, { label: 'hotdog', value: '2'}]}
        value="1"
    />

Ejemplo de select

Props

NombreTipoEjemploDescripción
labelString-Texto especificado como etiqueta.
valueString \| null-Valor de entrada.
optionsArray<Object>[{label, value}, {label, value}]Opciones a listar por el componente.
disabledBoolean-Hace que el textarea se inhabilite.
iconString \| null-Icono perteneciente a @mdi/font
idString-Identificador unico del textarea.

List

Indices verticales continuos.

    import { List, ListItem } from 'leita-components-ui'
    <List>
        <ListItem
            label="Hamburguesa"
            value="1"
            onClick={(e) => console.log(e)}
            description="$10.00"
            picture="https://www.infobae.com/NFO7LU.jpg"
            trailingIcon="account"            
        />
        <ListItem
            label="Hotdog con queso y cebolla"
            value="2"
            description="$15.00"
            picture="https://cnnespanol.cnn.com/CNN-hotdog.jpeg?quality=100&strip=info"
            trailingIcon="chevron-right"
        />
        <ListItem
            label="Item sin imagen"
            value="2"
            description="$15.00"
            trailingIcon="chevron-right"
        />
    </List>

Ejemplo de Lista

List Props

NombreTipoDescripción
childrenReact.ReactNodeContenido especificado como hijo.
loadingBooleanActiva animacion de carga del boton.

ListItem Props

NombreTipoDescripción
labelString \| nullTexto principal.
valueString \| nullValor de entrada.
descriptionString \| nullTexto secundario.
trailingIconString \| nullIcono izquierdo perteneciente a @mdi/font
classNameString \| nullClase css personalizada.
pictureString \| nullUrl de recurso.

ChipList

Lista horizontal de tarjetas.

    import { ChipList, ChipListItem } from 'leita-components-ui'
    <ChipList>
        <ChipListItem
            label="Categoria 1"
            value="0"
            picture="https://cnnespanol.cnn.com/quality=100&strip=info"
        />
        <ChipListItem
            label="Categoria 1"
            value="1"
            active
        />
        <ChipListItem
            onClick={() => console.log('hola')}
            label="Categoria 2"
            value="2"
            picture="https://cnnespanol.cnn.com/quality=100&strip=info"
        />
        <ChipListItem
            label="Categoria 3"
            value="3"
            picture="https://cnnespanol.cnn.com/quality=100&strip=info"
        />
    </ChipList>

Ejemplo de chiplist

ChipList Props

NombreTipoDescripción
childrenReact.ReactNodeContenido especificado como hijo.
loadingBooleanActiva animacion de carga del boton.

ChipListItem Props

NombreTipoDescripción
labelString \| nullTexto principal.
valueString \| nullValor de entrada.
classNameString \| nullClase css personalizada.
activeBooleanIndica si el elemento se encuentra activado
pictureString \| nullUrl de recurso.

Tabs

Permita explorar y cambiar entre vistas de manera sencilla.

    import { Tabs, TabItem } from 'leita-components-ui'
    <Tabs>
        <TabItem onClick={() => console.log('Hola')} label='Item 1' />
        <TabItem label="Item 2" active/>
        <TabItem label="Item 3" />
    </Tabs>

Ejemplo de tabs

Tabs Props

NombreTipoDescripción
childrenReact.ReactNodeContenido especificado como hijo.

TabItem Props

NombreTipoDescripción
labelString \| nullTexto principal.
classNameString \| nullClase css personalizada.
activeBooleanIndica si el elemento se encuentra activado

Notification

Permite mantener informado al usuario de las acciones que realiza.

    import { Notification } from 'leita-components-ui'
    <Notification 
        text='This is a notification'
        description='This is a description'
        icon='alert'
        show={show}
        type='success'
    />

Ejemplo de notificacion

Props

NombreTipoEjemploDescripción
textString-Texto principal.
descriptionString \| null-Texto secundario.
typeStringsuccess \| danger \| warningÉnfasis de la notificación.
showBoolean-Hace que la notificacion se muestre o no.
iconString \| null-Icono perteneciente a @mdi/font
onCloseFunction \| null-Accion de icono close
maxLengthDescriptionNumber-Numero de caracteres que permite la descripcion antes de mostrar la opcion de ver mas

ImagePicker

    import { ImagePicker } from 'leita-components-ui'
    <ImagePicker
        multiple
        imageList={imageList}
        maxSize={5}
        maxSizeMB={50000000}
        onChange={(e) => testChange(e)}
    />

Ejemplo de imagepicker Ejemplo de imagepicker Ejemplo de imagepicker

Cuando el componente cuenta con visualización de las imagenes cargadas, se puede cambiar el orden de las imagenes arrastrando y soltando las miniaturas en el orden deseado.

Props

NombreTipoEjemploDescripción
imageListArray<String>['', '']Lista de imagenes que se muestran.
multipleBoolean-Hace que se puedan subir mas de una imagen.
maxSizeNumber5Cuando se permitens subir mas de una imagen, este parametro limita la cantidad.
maxSizeMBNumber5000000Limita el tamaño de la imagen que se selecciona.

ToggleButton

Permite ocultar opciones en un unico boton.

    import { ToggleButton, ToggleButtonItem } from 'leita-components-ui'
    <ToggleButton label="Contactame" icon="message">
        <ToggleButtonItem value="facebook" icon="facebook" />
        <ToggleButtonItem value="twitter" icon="twitter" />
    </ToggleButton>

Ejemplo de toggle Ejemplo de toggle

ToggleButton Props

NombreTipoDescripción
childrenReact.ReactNodeContenido especificado como hijo.
disabledBooleanHace que el boton se inhabilite.
iconString \| nullIcono perteneciente a @mdi/font
labelString \| nullTexto principal.

ToggleButtonItem Props

NombreTipoDescripción
iconString \| nullIcono perteneciente a @mdi/font
valueString \| nullValor de entrada.
activeBooleanIndica si el elemento se encuentra activado

MDIcon

Agerga iconos para reforzar el mensaje.

    import { MDIcon } from 'leita-components-ui'
    <MDIcon name="loading" className="rotate" />

Props

NombreTipoEjemploDescripción
sizeNumber24 \| 36 \| 48Tamaño del icono.
nameString-Nombre del icono perteneciente a @mdi/font.
classNameString \| null-Clase css personalizada.
styleObject{ margin: '1rem' }Estilos personalizados para el icono.

Tooltip

Permite mostrar mensajes cortos que aparecen cuando tienen el foco o el cursor pasa sobre el elemento.

    import { Tooltip } from 'leita-components-ui'
    <Tooltip align='top' content='Pequeño tip'>
        <RadioButton label="Prueba Tooltip " />
    </Tooltip>

Ejemplo de tooltip

Props

NombreTipoEjemploDescripción
alignStringtop \| right \| bottom \| left \| autoPosición en la que se muestra el tooltip. Cuando se elige auto, el tooltip se posiciona segun el espacio disponible.
contentString-Mensaje que muestra el tooltip.
classNameString \| null-Clase css personalizada.

License

MIT

0.1.10

2 years ago

0.1.9

2 years ago

0.1.8

2 years ago

0.1.7

2 years ago

0.1.4

2 years ago

0.1.6

2 years ago

0.1.5

2 years ago

0.1.0

3 years ago

0.1.2

3 years ago

0.1.1

3 years ago

0.1.3

3 years ago

0.0.2

3 years ago

0.0.1

3 years ago