vue-intergrall-plugins 1.1.90 → 1.2.18

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.
Files changed (46) hide show
  1. package/README.md +220 -220
  2. package/dist/dist/vue-intergrall-plugins.css +1 -1
  3. package/dist/vue-intergrall-plugins.esm.js +223 -89
  4. package/dist/vue-intergrall-plugins.min.js +11 -11
  5. package/dist/vue-intergrall-plugins.ssr.js +276 -147
  6. package/package.json +1 -1
  7. package/src/lib-components/Buttons/IconButton.vue +27 -27
  8. package/src/lib-components/Buttons/SimpleButton.vue +140 -140
  9. package/src/lib-components/Cards/Card.vue +490 -490
  10. package/src/lib-components/Cards/CardCheck.vue +35 -35
  11. package/src/lib-components/Cards/CardFile.vue +163 -163
  12. package/src/lib-components/Chat/BtnDownloadAllFiles.vue +36 -36
  13. package/src/lib-components/Chat/BtnEmojis.vue +118 -118
  14. package/src/lib-components/Chat/BtnExpand.vue +17 -17
  15. package/src/lib-components/Chat/BtnFiles.vue +486 -486
  16. package/src/lib-components/Chat/BtnMic.vue +60 -60
  17. package/src/lib-components/Chat/BtnScreenShare.vue +31 -31
  18. package/src/lib-components/Chat/BtnStandardMessages.vue +17 -17
  19. package/src/lib-components/Chat/ExpandTextarea.vue +427 -427
  20. package/src/lib-components/Chat/MultipleFilePreview.vue +291 -291
  21. package/src/lib-components/Chat/Picker.vue +525 -525
  22. package/src/lib-components/Chat/RemainingCharacters.vue +28 -28
  23. package/src/lib-components/Chat/SingleFilePreview.vue +94 -94
  24. package/src/lib-components/Chat/SkeletonPicker.vue +110 -110
  25. package/src/lib-components/Chat/StandardMessages.vue +252 -252
  26. package/src/lib-components/Chat/TextFooter.vue +1007 -1007
  27. package/src/lib-components/Email/EmailExpanded.vue +270 -270
  28. package/src/lib-components/Email/EmailFile.vue +192 -192
  29. package/src/lib-components/Email/EmailFrom.vue +66 -66
  30. package/src/lib-components/Email/EmailItem.vue +867 -850
  31. package/src/lib-components/Email/EmailTo.vue +64 -64
  32. package/src/lib-components/Loader/Loader.vue +78 -78
  33. package/src/lib-components/Messages/AnexoMensagem.vue +625 -497
  34. package/src/lib-components/Messages/CardAttachment.vue +61 -61
  35. package/src/lib-components/Messages/CardMessages.vue +687 -687
  36. package/src/lib-components/Messages/ChatMessages.vue +259 -78
  37. package/src/lib-components/Messages/InteratividadeBotoes.vue +197 -197
  38. package/src/lib-components/Messages/InteratividadeContato.vue +32 -32
  39. package/src/lib-components/Messages/InteratividadeContatoItem.vue +235 -235
  40. package/src/lib-components/Messages/InteratividadeFormulario.vue +334 -334
  41. package/src/lib-components/Messages/InteratividadePopup.vue +95 -95
  42. package/src/lib-components/Messages/LinkPreview.vue +176 -176
  43. package/src/lib-components/Scroll/ScrollContent.vue +166 -166
  44. package/src/lib-components/Templates/TemplateGenerator.vue +640 -640
  45. package/src/lib-components/Templates/TemplateMessage.vue +83 -83
  46. package/src/lib-components/Templates/TemplateSingle.vue +478 -478
@@ -1,270 +1,270 @@
1
- <template>
2
- <div class="email-blocker" @click="close">
3
- <div class="email-blocker-content konecta-box-shadow" @click.stop>
4
- <svg @click="close" class="btn-exit" fill="var(--exit-button-color)" width="18px" height="18px"
5
- viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" stroke="var(--exit-button-color)">
6
- <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
7
- <g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g>
8
- <g id="SVGRepo_iconCarrier">
9
- <path
10
- d="M 7.21875 5.78125 L 5.78125 7.21875 L 14.5625 16 L 5.78125 24.78125 L 7.21875 26.21875 L 16 17.4375 L 24.78125 26.21875 L 26.21875 24.78125 L 17.4375 16 L 26.21875 7.21875 L 24.78125 5.78125 L 16 14.5625 Z">
11
- </path>
12
- </g>
13
- </svg>
14
- <h1 class="email-title" v-text="assunto ? replaceUnicodeWithEmoji(htmlEntityToEmoji(assunto)) : '(Sem assunto)'">
15
- </h1>
16
- <table class="email-content-table">
17
- <tbody>
18
- <tr>
19
- <th>
20
- De:
21
- </th>
22
- <td>
23
- <template v-if="from && from.length">
24
- <span v-for="(sender, index) in from" :key="`from-${index}`">
25
- {{ formattedName(sender.name, index, from.length, true) }}
26
- {{ formattedMail(sender.email, index, from.length, true) }}
27
- </span>
28
- </template>
29
- <span v-else> -- </span>
30
- </td>
31
- </tr>
32
- <tr>
33
- <th>
34
- Para:
35
- </th>
36
- <td>
37
- <template v-if="para && para.length">
38
- <span v-for="(recipient, index) in para" :key="`to-${index}`">
39
- {{ formattedToName(recipient.name, index, para.length) }}
40
- {{ `<${recipient.email}>` }}
41
- </span>
42
- </template>
43
- <span v-else> -- </span>
44
- </td>
45
- </tr>
46
- <tr v-if="dataHora">
47
- <th>Data:</th>
48
- <td>{{ formataDataHora(dataHora, true, false) }} - {{ formattedDate }}</td>
49
- </tr>
50
- <template v-if="additionalTableData && additionalTableData.length">
51
- <tr v-for="(data, index) in additionalTableData" :key="`info-${index}`">
52
- <th v-text="data.label"></th>
53
- <td v-text="data.value"></td>
54
- </tr>
55
- </template>
56
- <tr v-if="anexos && anexos.length">
57
- <th>Anexos:</th>
58
- <td>
59
- <div class="email-file-content">
60
- <EmailFile v-for="(anexo, index) in anexos" :key="index" :anexo="anexo" :dominio="dominio" />
61
- </div>
62
- </td>
63
- </tr>
64
- </tbody>
65
- </table>
66
- <hr class="email-divisor" />
67
- <div class="email-raw-content">
68
- <h2>Mensagem original</h2>
69
- <div v-text="html || mensagem"></div>
70
- </div>
71
- </div>
72
- </div>
73
- </template>
74
-
75
- <script>
76
- import { textoLongo } from "@/mixins/formatarTexto"
77
- import EmailFile from './EmailFile'
78
-
79
- export default {
80
- components: { EmailFile },
81
- mixins: [textoLongo],
82
- props: {
83
- dicionario: {
84
- type: Object
85
- },
86
- from: {
87
- type: Array
88
- },
89
- para: {
90
- type: Array
91
- },
92
- html: {
93
- type: String
94
- },
95
- assunto: {
96
- type: String
97
- },
98
- dataHora: {
99
- type: String
100
- },
101
- mensagem: {
102
- type: String
103
- },
104
- anexos: {
105
- type: Array,
106
- default: () => []
107
- },
108
- dominio: {
109
- type: String,
110
- required: true
111
- },
112
- additionalTableData: {
113
- type: Array,
114
- default: () => []
115
- }
116
- },
117
- computed: {
118
- formattedDate() {
119
- return this.formataDateHoraDateFns(this.dataHora, this.dataServer, this.dicionario)
120
- }
121
- },
122
- data() {
123
- return {
124
- secondaryBlocker: false,
125
- imageSource: ""
126
- }
127
- },
128
- methods: {
129
- close() {
130
- this.$emit('close')
131
- },
132
- formattedName(name, index, length, isOpen) {
133
- if (!name) return '';
134
- return `${name}${index !== length - 1 && !isOpen ? ', ' : ''}`;
135
- },
136
- formattedMail(email, index, length, isOpen) {
137
- if (!email) return '';
138
- return `<${email}${index !== length - 1 && isOpen ? '>, ' : '>'}`;
139
- },
140
- formattedToName(name, index, length) {
141
- if (!name) return '';
142
- return index === 0 ? `${name || ''}` : name ? `${name}${index !== length - 1 ? ', ' : ''}` : '';
143
- }
144
- }
145
- }
146
- </script>
147
-
148
- <style scoped>
149
- .btn-exit {
150
- cursor: pointer;
151
- position: absolute;
152
- top: 15px;
153
- right: 15px;
154
- z-index: 1;
155
- }
156
-
157
- .konecta-box-shadow {
158
- box-shadow: var(--konecta-box-shadow);
159
- }
160
-
161
- .email-blocker {
162
- --konecta-pink: #d54286;
163
- --konecta-light: #f8f9fa;
164
- --konecta-dark: #212529;
165
- --white: #fff;
166
- --white-shadow: rgba(255, 255, 255, 0.5);
167
- --konecta-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
168
- --gray-3: #e2e6ea;
169
- --exit-button-color: #999;
170
- font-family: 'Roboto', sans-serif;
171
- position: absolute;
172
- top: 0;
173
- left: 0;
174
- width: 100%;
175
- height: 100%;
176
- display: flex;
177
- justify-content: center;
178
- align-items: center;
179
- z-index: 99;
180
- background-color: var(--white-shadow);
181
- overflow: visible;
182
- }
183
-
184
- .email-blocker-content {
185
- width: 90%;
186
- height: 90%;
187
- min-width: 300px;
188
- min-height: 300px;
189
- max-width: 90%;
190
- max-height: 90%;
191
- overflow: hidden auto;
192
- position: relative;
193
- background-color: var(--white);
194
- color: var(--konecta-dark);
195
- border-radius: 6px;
196
- }
197
-
198
- .email-title {
199
- font-size: 17.6px;
200
- width: 100%;
201
- background-color: var(--konecta-light);
202
- color: var(--konecta-pink);
203
- border-bottom: 1px solid var(--gray-3);
204
- padding: 15px;
205
- display: flex;
206
- align-items: center;
207
- justify-content: space-between;
208
- border-top-left-radius: 6px;
209
- border-top-right-radius: 6px;
210
- margin: 0 0 10px 0;
211
- position: relative;
212
- }
213
-
214
- .email-content-table {
215
- padding: 0;
216
- margin: 0 10px 10px;
217
- font-size: 15.2px;
218
- border-collapse: collapse;
219
- width: calc(100% - 20px);
220
- }
221
-
222
- .email-content-table th,
223
- .email-content-table td {
224
- border: solid thin var(--gray-3);
225
- }
226
-
227
- .email-content-table th {
228
- min-width: 100px;
229
- text-align: left;
230
- vertical-align: text-top;
231
- padding: 12px 20px;
232
- font-weight: 400;
233
- border-right: unset;
234
- }
235
-
236
- .email-divisor {
237
- margin-top: 15px;
238
- margin-bottom: 10px;
239
- height: 1px;
240
- width: 100%;
241
- background: var(--gray-3);
242
- border: unset;
243
- }
244
-
245
- .email-content-table td {
246
- padding: 8px;
247
- border-left: unset;
248
- }
249
-
250
- .email-raw-content {
251
- display: flex;
252
- flex-direction: column;
253
- gap: 10px;
254
- padding: 0 15px 15px;
255
- max-width: 100%;
256
- }
257
-
258
- .email-raw-content h2 {
259
- margin: 0;
260
- padding: 0;
261
- font-size: 16px;
262
- }
263
-
264
- .email-file-content {
265
- display: flex;
266
- gap: 10px;
267
- flex-wrap: wrap;
268
- align-items: center;
269
- }
270
- </style>
1
+ <template>
2
+ <div class="email-blocker" @click="close">
3
+ <div class="email-blocker-content konecta-box-shadow" @click.stop>
4
+ <svg @click="close" class="btn-exit" fill="var(--exit-button-color)" width="18px" height="18px"
5
+ viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg" stroke="var(--exit-button-color)">
6
+ <g id="SVGRepo_bgCarrier" stroke-width="0"></g>
7
+ <g id="SVGRepo_tracerCarrier" stroke-linecap="round" stroke-linejoin="round"></g>
8
+ <g id="SVGRepo_iconCarrier">
9
+ <path
10
+ d="M 7.21875 5.78125 L 5.78125 7.21875 L 14.5625 16 L 5.78125 24.78125 L 7.21875 26.21875 L 16 17.4375 L 24.78125 26.21875 L 26.21875 24.78125 L 17.4375 16 L 26.21875 7.21875 L 24.78125 5.78125 L 16 14.5625 Z">
11
+ </path>
12
+ </g>
13
+ </svg>
14
+ <h1 class="email-title" v-text="assunto ? replaceUnicodeWithEmoji(htmlEntityToEmoji(assunto)) : '(Sem assunto)'">
15
+ </h1>
16
+ <table class="email-content-table">
17
+ <tbody>
18
+ <tr>
19
+ <th>
20
+ De:
21
+ </th>
22
+ <td>
23
+ <template v-if="from && from.length">
24
+ <span v-for="(sender, index) in from" :key="`from-${index}`">
25
+ {{ formattedName(sender.name, index, from.length, true) }}
26
+ {{ formattedMail(sender.email, index, from.length, true) }}
27
+ </span>
28
+ </template>
29
+ <span v-else> -- </span>
30
+ </td>
31
+ </tr>
32
+ <tr>
33
+ <th>
34
+ Para:
35
+ </th>
36
+ <td>
37
+ <template v-if="para && para.length">
38
+ <span v-for="(recipient, index) in para" :key="`to-${index}`">
39
+ {{ formattedToName(recipient.name, index, para.length) }}
40
+ {{ `<${recipient.email}>` }}
41
+ </span>
42
+ </template>
43
+ <span v-else> -- </span>
44
+ </td>
45
+ </tr>
46
+ <tr v-if="dataHora">
47
+ <th>Data:</th>
48
+ <td>{{ formataDataHora(dataHora, true, false) }} - {{ formattedDate }}</td>
49
+ </tr>
50
+ <template v-if="additionalTableData && additionalTableData.length">
51
+ <tr v-for="(data, index) in additionalTableData" :key="`info-${index}`">
52
+ <th v-text="data.label"></th>
53
+ <td v-text="data.value"></td>
54
+ </tr>
55
+ </template>
56
+ <tr v-if="anexos && anexos.length">
57
+ <th>Anexos:</th>
58
+ <td>
59
+ <div class="email-file-content">
60
+ <EmailFile v-for="(anexo, index) in anexos" :key="index" :anexo="anexo" :dominio="dominio" />
61
+ </div>
62
+ </td>
63
+ </tr>
64
+ </tbody>
65
+ </table>
66
+ <hr class="email-divisor" />
67
+ <div class="email-raw-content">
68
+ <h2>Mensagem original</h2>
69
+ <div v-text="html || mensagem"></div>
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </template>
74
+
75
+ <script>
76
+ import { textoLongo } from "@/mixins/formatarTexto"
77
+ import EmailFile from './EmailFile'
78
+
79
+ export default {
80
+ components: { EmailFile },
81
+ mixins: [textoLongo],
82
+ props: {
83
+ dicionario: {
84
+ type: Object
85
+ },
86
+ from: {
87
+ type: Array
88
+ },
89
+ para: {
90
+ type: Array
91
+ },
92
+ html: {
93
+ type: String
94
+ },
95
+ assunto: {
96
+ type: String
97
+ },
98
+ dataHora: {
99
+ type: String
100
+ },
101
+ mensagem: {
102
+ type: String
103
+ },
104
+ anexos: {
105
+ type: Array,
106
+ default: () => []
107
+ },
108
+ dominio: {
109
+ type: String,
110
+ required: true
111
+ },
112
+ additionalTableData: {
113
+ type: Array,
114
+ default: () => []
115
+ }
116
+ },
117
+ computed: {
118
+ formattedDate() {
119
+ return this.formataDateHoraDateFns(this.dataHora, this.dataServer, this.dicionario)
120
+ }
121
+ },
122
+ data() {
123
+ return {
124
+ secondaryBlocker: false,
125
+ imageSource: ""
126
+ }
127
+ },
128
+ methods: {
129
+ close() {
130
+ this.$emit('close')
131
+ },
132
+ formattedName(name, index, length, isOpen) {
133
+ if (!name) return '';
134
+ return `${name}${index !== length - 1 && !isOpen ? ', ' : ''}`;
135
+ },
136
+ formattedMail(email, index, length, isOpen) {
137
+ if (!email) return '';
138
+ return `<${email}${index !== length - 1 && isOpen ? '>, ' : '>'}`;
139
+ },
140
+ formattedToName(name, index, length) {
141
+ if (!name) return '';
142
+ return index === 0 ? `${name || ''}` : name ? `${name}${index !== length - 1 ? ', ' : ''}` : '';
143
+ }
144
+ }
145
+ }
146
+ </script>
147
+
148
+ <style scoped>
149
+ .btn-exit {
150
+ cursor: pointer;
151
+ position: absolute;
152
+ top: 15px;
153
+ right: 15px;
154
+ z-index: 1;
155
+ }
156
+
157
+ .konecta-box-shadow {
158
+ box-shadow: var(--konecta-box-shadow);
159
+ }
160
+
161
+ .email-blocker {
162
+ --konecta-pink: #d54286;
163
+ --konecta-light: #f8f9fa;
164
+ --konecta-dark: #212529;
165
+ --white: #fff;
166
+ --white-shadow: rgba(255, 255, 255, 0.5);
167
+ --konecta-box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5);
168
+ --gray-3: #e2e6ea;
169
+ --exit-button-color: #999;
170
+ font-family: 'Roboto', sans-serif;
171
+ position: absolute;
172
+ top: 0;
173
+ left: 0;
174
+ width: 100%;
175
+ height: 100%;
176
+ display: flex;
177
+ justify-content: center;
178
+ align-items: center;
179
+ z-index: 99;
180
+ background-color: var(--white-shadow);
181
+ overflow: visible;
182
+ }
183
+
184
+ .email-blocker-content {
185
+ width: 90%;
186
+ height: 90%;
187
+ min-width: 300px;
188
+ min-height: 300px;
189
+ max-width: 90%;
190
+ max-height: 90%;
191
+ overflow: hidden auto;
192
+ position: relative;
193
+ background-color: var(--white);
194
+ color: var(--konecta-dark);
195
+ border-radius: 6px;
196
+ }
197
+
198
+ .email-title {
199
+ font-size: 17.6px;
200
+ width: 100%;
201
+ background-color: var(--konecta-light);
202
+ color: var(--konecta-pink);
203
+ border-bottom: 1px solid var(--gray-3);
204
+ padding: 15px;
205
+ display: flex;
206
+ align-items: center;
207
+ justify-content: space-between;
208
+ border-top-left-radius: 6px;
209
+ border-top-right-radius: 6px;
210
+ margin: 0 0 10px 0;
211
+ position: relative;
212
+ }
213
+
214
+ .email-content-table {
215
+ padding: 0;
216
+ margin: 0 10px 10px;
217
+ font-size: 15.2px;
218
+ border-collapse: collapse;
219
+ width: calc(100% - 20px);
220
+ }
221
+
222
+ .email-content-table th,
223
+ .email-content-table td {
224
+ border: solid thin var(--gray-3);
225
+ }
226
+
227
+ .email-content-table th {
228
+ min-width: 100px;
229
+ text-align: left;
230
+ vertical-align: text-top;
231
+ padding: 12px 20px;
232
+ font-weight: 400;
233
+ border-right: unset;
234
+ }
235
+
236
+ .email-divisor {
237
+ margin-top: 15px;
238
+ margin-bottom: 10px;
239
+ height: 1px;
240
+ width: 100%;
241
+ background: var(--gray-3);
242
+ border: unset;
243
+ }
244
+
245
+ .email-content-table td {
246
+ padding: 8px;
247
+ border-left: unset;
248
+ }
249
+
250
+ .email-raw-content {
251
+ display: flex;
252
+ flex-direction: column;
253
+ gap: 10px;
254
+ padding: 0 15px 15px;
255
+ max-width: 100%;
256
+ }
257
+
258
+ .email-raw-content h2 {
259
+ margin: 0;
260
+ padding: 0;
261
+ font-size: 16px;
262
+ }
263
+
264
+ .email-file-content {
265
+ display: flex;
266
+ gap: 10px;
267
+ flex-wrap: wrap;
268
+ align-items: center;
269
+ }
270
+ </style>