1.0.0 • Published 6 months ago

durenchat v1.0.0

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

Durenchat

Durenchat é uma biblioteca para criar e gerenciar chats em aplicações web. Ela permite a criação de chats com funcionalidades como envio de mensagens, anexos, emojis e gravação de áudio.

Conteúdo

Instalação

npm install durenchat

Imporação

import { durenchat, popup } from 'durenchat';

Exemplo

const chat = durenchat({
  users: [
    {
      id: 2,
      name: 'Matheus',
      color: '#4a3d1f',
      textColor: '#fff',
      photoUrl: 'image.png',
    },
  ],
  self: 2,
  icons: {
    sent: icons.sent,
    delivered: icons.delivered,
    read: icons.read,
    options: icons.options,
    cancelEdit: icons.cancelEdit,
    send: icons.send,
    emoji: icons.emoji,
    file: icons.file,
    microphone: icons.microphone,
  },
});

const user = chat.getUser(2);

chat.defineHeader({
  photoUrl: 'photo.png',
  name: user.name,
});

chat.defineChatcontainer('dc-messages');
chat.defineFooter();

chat.render('div-id');
chat.sendMessage({
  sender: 1,
  content: 'Olá',
});

Uso do PopUp

const popupChat = popup({
  container: 'body',
  color: '#5cc1ff',
  id: 'popup-container',
  icons: {
    popupOpen: icons.popupOpen,
    popupClose: icons.popupClose,
  },
});

popupChat.defineChat(chat);

Métodos

Durendal

MétodoDescrição
render(containerId: string)Renderiza o chat em um elemento específico.
initializeUsers(users: UserConstructor[]): User[]Inicializa os usuários do chat.
on(event: string, listener: ChatEventListener)Adiciona ouvintes de eventos.
off(event: string, listener: ChatEventListener)Remove ouvintes de eventos.
getUser(id: string/string): UserObtém um usuário pelo ID.
addUser(user: UserConstructor): UserAdiciona um novo usuário.
updateUser(user: UserConstructor): UserAtualiza um usuário existente.
getMessage(id: string/number): MessageObtém uma mensagem pelo ID.
sendMessage(message: MessageConfig): MessageEnvia uma mensagem.
defineHeader(data: ChatHeader/string)Define o cabeçalho do chat.
defineChatcontainer(containerId: string, html?: string)Define o contêiner do chat.
defineFooter(html?: string)Define o rodapé do chat.

Message

MétodoDescrição
getId(): string/numberObtém o ID da mensagem.
getSender(): UserObtém o remetente da mensagem.
getContent(): MessageContentObtém o conteúdo da mensagem.
getSentDate(): DateObtém a data de envio da mensagem.
getStatus(): 'sent'/'delivered'/'read'Obtém o status da mensagem.
setStatus(newStatus: 'sent'/'delivered'/'read'): voidDefine o status da mensagem.
getElement(): HTMLElement/undefinedObtém o elemento da mensagem no DOM.
setElement(element: HTMLElement): voidDefine o elemento da mensagem no DOM.
setMessageText(newContent: string): voidAtualiza o texto da mensagem.

User

MétodoDescrição
getId(): string/numberObtém o ID do usuário.
getColor(): stringObtém a cor do usuário.
getTextColor(): stringObtém a cor do texto do usuário.
updateUser(user: UserConstructor): voidAtualiza os dados do usuário.

Eventos

EventoDescrição
chat-initializedDisparado quando o chat é inicializado.
user-addedDisparado quando um novo usuário é adicionado.
user-updatedDisparado quando um usuário é atualizado.
message-sentDisparado quando uma mensagem é enviada.
message-updatedDisparado quando uma mensagem é atualizada.
message-deletedDisparado quando uma mensagem é deletada.
start-message-editDisparado quando a edição de uma mensagem é iniciada.
audio-startDisparado quando a gravação é iniciada.
audio-errorDisparado quando ocorre um erro de áudio.
audio-finishDisparado quando a gravação de áudio é concluída.
audio-cancelDisparado quando a gravação de áudio é cancelada.
file-uploadedDisparado quando um arquivo é enviado.
file-droppedDisparado quando um arquivo é descartado.
1.0.0

6 months ago