1.3.2 • Published 6 months ago

@zeedhi/zd-user-info-common v1.3.2

Weekly downloads
-
License
-
Repository
-
Last release
6 months ago

ZdUserInfo

Componente de UserInfo construído com o Zeedhi Next

Instalação

O ZdUserInfo é composto pelos pacotes @zeedhi/zd-user-info-common e @zeedhi/zd-user-info-vue. Utilize o comando abaixo para instalar ambos automaticamente:

npm install @zeedhi/zd-user-info

Ou instale os pacotes separadamente:

npm install @zeedhi/zd-user-info-vue @zeedhi/zd-user-info-common

Dependências Adicionais

Por padrão, o ZdUserInfo fará uso do componente ZdAvatar para renderizar o activator do Dropdown. Caso queira utilizar o activator padrão, instale também o ZdAvatar, mas caso não queira será necessário sobrescrever a propriedade activator (ver exemplos)

Registro do Componente

Para registrá-lo, adicione o seguinte código ao inicializar a aplicação (por exemplo no arquivo zeedhi.ts)

import Vue from 'vue';
import { ZdUserInfo } from '@zeedhi/zd-user-info'; 
// import { ZdUserInfo } from '@zeedhi/zd-user-info-vue'; caso tenha instalado os pacotes separadamente

Vue.component('ZdUserInfo', ZdUserInfo);

Uso Básico

Para utilizá-lo em um Metadata, basta definir a propriedade component como "ZdUserInfo". Para definir o nome do usuário, defina a propriedade user, e para definir a imagem do usuário defina a propriedade userImage:

{
  "name": "card",
  "component": "ZdCard",
  "cssClass": "zd-display-flex zd-justify-end",
  "children": [
    {
      "name": "user-info",
      "component": "ZdUserInfo",
      "user": "Jane Doe",
      "userImage": "https://picsum.photos/id/1005/100/100.jpg",
      "minWidth": "200px"
    }
  ]
}

Propriedades

NomeTipoPadrãoDescrição
activatorIComponentRenderO activator padrão é um ZdAvatar com um TooltipDefine o componente usado para ativar o menu
avatarPropsIDictionary{}Props que serão passadas ao componente ZdAvatar
bottomSlotIComponentRender[][]Define os componentes que serão renderizados na parte inferior do menu
centerSlotIComponentRender[]O centerSlot padrão é um List com duas opções: alterar perfil e logoutDefine os componentes que serão renderizados no centro do menu
closeOnClickbooleantrueDefine se o menu irá fechar ao clicar fora do activator
closeOnContentClickbooleantrueDefine se o menu deve fechar ao clicar em seu conteúdo
fixedbooleanfalseAplica position fixed ao menu
headerSlotIComponentRender[][]Componentes que serão renderizados no cabeçalho do menu
heightnumber | string'auto'Altura do menu
imagePropsIDictionary{}Props que serão passadas ao componente ZdImage (renderizado dentro do ZdAvatar)
offsetXbooleanfalseDesloca o menu pelo eixo x
offsetYbooleantrueDesloca o menu pelo eixo y
openOnClickbooleantrueDefine se o menu deve abrir ao clicar no activator
openOnHoverbooleanfalseDefine se o menu deve abrir ao passar o cursor sobre o activator
maxHeightnumber | stringundefinedAltura máxima do menu
maxWidthnumber | stringundefinedLargura máxima do menu
minHeightnumber | stringundefinedAltura mínima do menu
minWidthnumber | stringundefinedLargura mínima do menu
topSlotIComponentRender[][]Componentes que serão renderizados na parte superior do menu
userstring''Nome do usuário
userImagestring''Imagem que será renderizada dentro do ZdAvatar
valuebooleanfalseExibe ou esconde o menu

Eventos

NomeParâmetrosDescrição
onProfileChange{ component, element, event }: IEventParamDisparado ao clicar no item de alterar perfil
onLogoutClick{ component, element, event }: IEventParamDisparado ao clicar no item de sair

Exemplos

avatarProps e imageProps

É possível sobrescrever as propriedades dos componentes ZdAvatar e ZdImage que são renderizados. No exemplo abaixo a propriedade imageProps é utilizada para melhorar a resolução da imagem, enquanto a propriedade avatarProps é utilizada para aumentar o tamanho do ZdAvatar:

{
  "name": "card",
  "component": "ZdCard",
  "cssClass": "zd-display-flex zd-justify-end",
  "children": [
    {
      "name": "user-info",
      "component": "ZdUserInfo",
      "user": "Jane Doe",
      "userImage": "https://picsum.photos/id/1005/200/200.jpg",
      "minWidth": "200px",
      "avatarProps": {
        "size": 62
      },
      "imageProps": {
        "height": "100px"
      }
    }
  ]
}

Sobrescrevendo o activator

Caso não queira utilizar o activator padrão do componente, basta sobrescrever a propriedade activator:

{
  "name": "card",
  "component": "ZdCard",
  "cssClass": "zd-display-flex zd-justify-end",
  "children": [
    {
      "name": "user-info",
      "component": "ZdUserInfo",
      "user": "Jane Doe",
      "minWidth": "200px",
      "activator": {
        "name": "user-button",
        "component": "ZdButton",
        "icon": true,
        "iconName": "mdi-account"
      }
    }
  ]
}