vue-intergrall-plugins 0.0.4 → 0.0.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md ADDED
@@ -0,0 +1,177 @@
1
+ # :earth_americas: Vue IntergrAll Plugins
2
+ Biblioteca de plugins feitos em Vue para serem utilizados em qualquer lugar dentro das necessidades do Sistema IntergrAll.
3
+
4
+ ![Vue.js](https://img.shields.io/badge/vuejs-%2335495e.svg?style=for-the-badge&logo=vuedotjs&logoColor=%234FC08D)
5
+
6
+ ## Template Generator:
7
+ ### Props:
8
+ **templates:**
9
+ - type: Object
10
+ - required: true
11
+ - desc: Objeto dos templates a serem exibidos.
12
+
13
+ **identifier:**
14
+ - type: String
15
+ - required: true
16
+ - desc: Identificador único para o componente. Útil para caso seja necessário disparar uma função de dentro do componente.
17
+
18
+ **dictionary:**
19
+ - type: Object
20
+ - required: true
21
+ - desc: Dicionário de palavras a ser utilizado no componente.
22
+
23
+ **hasButton:**
24
+ - type: Boolean
25
+ - required: false
26
+ - default: true
27
+ - desc: Exibir botão de envio. Faz a emissão do evento @click-trigger.
28
+
29
+ **iconButton:**
30
+ - type: Boolean
31
+ - required: false
32
+ - desc: Estiliza o botão para ser apenas um ícone 'fas fa-paperplane'. Para funcionar a opção hasButton deve ser true (default).
33
+
34
+ **columnSelect:**
35
+ - type: Boolean
36
+ - required: false
37
+ - desc: Torna o container do select de templates em coluna, onde encima ficará o título, "Template:" e embaixo o select. O padrão é o título e o select na mesma linha.
38
+
39
+ **resizeParentOnSelect:**
40
+ - type: Boolean
41
+ - required: false
42
+ - desc: Indica ao selecionar um template que o componente pai deve ter seu tamanho corrigido caso não faça isso naturalmente. Faz a emissão do evento @resize-parent.
43
+
44
+ **placement:**
45
+ - type: String
46
+ - required: false
47
+ - default: "bottom"
48
+ - desc: Indica se as opções do select devem abrir para cima('top'), ou para baixo('bottom', default).
49
+
50
+ **allVariables:**
51
+ - type: Boolean
52
+ - required: false
53
+ - default: true
54
+ - desc: Indica se todas variáveis devem ser exibidas quando houver o clique sobre o input para digitar o valor das variáveis.
55
+
56
+ ### Emitters:
57
+ **@click-trigger:**
58
+ - desc: Emitido ao clicar no botão.
59
+
60
+ **@selected-template:**
61
+ - desc: Emitido ao selecionar alguma opção do template.
62
+ - sent_data: String - código do template ou 'envio_msg', que indica que o template é uma mensagem a ser digitada pelo usuário.
63
+
64
+ **@resize-parent:**
65
+ - desc: Emitido ao selecionar algum template.
66
+
67
+ **@template-data:**
68
+ - desc: Emitido quando é selecionado um template sem variáveis ou conforme o preenchimento da(s) variável(eis).
69
+ - sent_data: Object - envia os dados do template com os valores a serem atribuidos a variável na posição 'currentText'.
70
+
71
+ **@static-message:**
72
+ - desc: Emitido conforme o preenchimento do campo de texto.
73
+ - sent_data: String - valor da mensagem
74
+
75
+ ## Text Footer:
76
+ ### Props:
77
+ **textId:**
78
+ - type: String
79
+ - required: true
80
+ - desc: Identificador único para o componente. Útil para caso seja necessário disparar uma função de dentro do componente.
81
+
82
+ **dictionary:**
83
+ - type: Object
84
+ - required: true
85
+ - desc: Dicionário de palavras a ser utilizado no componente.
86
+
87
+ **buttons:**
88
+ - type: Object
89
+ - required: false
90
+ - default: { hasEmojis: false, hasSendButton: false, hasFiles: false, hasAudio: false }
91
+ - desc: Objeto responsável por habilitar os possíveis botões do componente. Sendo eles, emojis, enviar, arquivos e áudio, todos aceitam Boolean, true ou false.
92
+
93
+ **cssStyle:**
94
+ - type: Object
95
+ - required: false
96
+ - default: { width: "full", backgroundColor: "#FFF", outsideButtons: false }
97
+ - desc: Objeto de estilização, onde:
98
+ - width: Largura do componente. Aceita a String "full" (100%), "almostFull" (95%) ou "medium" (75%).
99
+ - backgroundColor: Cor de fundo do compoennte. Aceita String com qualquer código de cor CSS válido.
100
+ - outsideButtons: Coloca os botões flutuando na parte superior direita do componente. Aceita Boolean, true ou false.
101
+
102
+ **textareaSettings:**
103
+ - type: Object
104
+ - required: false
105
+ - default: { placeholderMessage: "", maxCharacters: 0, sendOnEnter: false, disabled: false }
106
+ - desc: Configurações do campo de texto, onde:
107
+ - placeholderMessage: Placeholder do campo de texto. Aceita qualquer String.
108
+ - maxCharacters: Máximo de caracteres aceitos no campo de texto. Aceita qualquer número positivo.
109
+ - sendOnEnter: Faz a emissão do evento que dispara a mensagem. Aceita Boolean, true ou false.
110
+ - disabled: Desabilita o campo de texto. Aceita Boolean, true ou false.
111
+
112
+ **emojiSettings:**
113
+ - type: Object
114
+ - required: false
115
+ - default: { openEmojisFrom: "top", smallEmojis: false }
116
+ - desc: Configurações dos emojis, onde:
117
+ - openEmojisFrom: Direção que a caixa de seleção de emojis vai abrir. Aceita String "top" ou "bottom".
118
+ - smallEmojis: Diminui o tamanho dos emojis renderizados na caixa de seleção. Aceita Boolean, true ou false.
119
+
120
+ **formattedMessageSettings:**
121
+ - type: Object
122
+ - required: false
123
+ - default: { hasHsm: false, msgType: 0 }
124
+ - desc: Configurações das mensagens formatadas, onde:
125
+ - hasHsm: Faz a aparição do botão de mensagem formatada caso verdadeiro. Aceita Boolean, true ou false.
126
+ - msgType: Tipo da mensagem formatada. Aceita os números 0 (sem mensagem), 1 (tipo mensagem 1) ou 2 (tipo mensagem 2).
127
+
128
+ **fileSettings:**
129
+ - type: Object
130
+ - required: false
131
+ - default: { docsExtensions: "", imagesExtensions: "" }
132
+ - desc: Configurações dos arquivos, onde docsExtensions e imagesExtensions aceitam uma regex contendo as possíveis extensões a serem enviadas.
133
+
134
+ **isSending:**
135
+ - type: Boolean
136
+ - required: false
137
+ - default: false
138
+ - desc: Variável de controle que, quando marcada como true, coloca um loader no campo de texto para que não sejam realizadas múltiplas requisições enquanto uma já está em andamento.
139
+
140
+ **isMainChat:**
141
+ - type: Boolean
142
+ - required: false
143
+ - default: false
144
+ - desc: Controle de verificação para saber se o chat em questão é o principal da tela (tende a ser excluído nas próximas implementações)
145
+
146
+ ### Emitters:
147
+ **@final-message:**
148
+ - desc: Emitido conforme o preenchimento do campo de texto.
149
+ - sent_data: String - valor da mensagem. **Obs:** Para os emojis, é enviado o seu respectivo código em HTML.
150
+
151
+ **@send-message:**
152
+ - desc: Emitido ao disparar mensagem pelo botão, tecla enter ou shift + enter, dependendo das props recebidas.
153
+ - sent_data: String - valor da mensagem. **Obs:** Para os emojis, é enviado o seu respectivo código em HTML.
154
+
155
+ **@obj-message:**
156
+ - desc: Emitido ao disparar mensagem pelo botão, tecla enter ou shift + enter, dependendo das props recebidas.
157
+ - sent_data: Object - Contém os seguintes valores referentes a mensagem:
158
+ - message: String, valor da mensagem;
159
+ - attachment: File, arquivo enviado;
160
+ - isDoc: Boolean, sinaliza se a mensagem é um documento;
161
+ - image: File, imagem enviada;
162
+ - isAudio: Boolean, sinaliza se a mensagem é do tipo áudio;
163
+ - audioAttachment: File, arquivo de áudio enviado.
164
+
165
+ ## Dependências:
166
+ 1. ![FontAwesome](https://img.shields.io/badge/%40fortawesome%2Ffontawesome--free-%5E5.15.4-blue)
167
+ 2. ![FontAwesome](https://img.shields.io/badge/%40fortawesome%2Ffontawesome--svg--core-%5E1.2.36-blue)
168
+ 3. ![FontAwesome](https://img.shields.io/badge/%40fortawesome%2Ffree--solid--svg--icons-%5E5.15.4-blue)
169
+ 4. ![FontAwesome](https://img.shields.io/badge/%40fortawesome%2Fvue--fontawesome-%5E2.0.2-blue)
170
+ 5. ![VueSelect](https://img.shields.io/badge/vue--select-%5E3.12.3-green)
171
+ 6. ![PopperJS](https://img.shields.io/badge/%40popperjs%2Fcore-%5E2.9.3-green)
172
+ 7. ![VueClickaway](https://img.shields.io/badge/vue--clickaway-%5E2.2.2-orange)
173
+ 8. ![EmojiMartVue](https://img.shields.io/badge/emoji--mart--vue-%5E2.6.6-yellow)
174
+ 9. ![VueToasted](https://img.shields.io/badge/vue--toasted-%5E1.1.28-red)
175
+ 10. ![CoreJS](https://img.shields.io/badge/core--js-%5E3.16.3-lightgrey)
176
+
177
+ > Desenvolvido por **_Augusto Seabra_**