vue-wiguet-chatweb 0.1.28 → 0.1.29
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +68 -68
- package/dist/components/Chat.vue.d.ts +2 -5
- package/dist/components/DangerIcon.vue.d.ts +1 -1
- package/dist/components/IconAttach.vue.d.ts +1 -1
- package/dist/components/IconChat.vue.d.ts +1 -1
- package/dist/components/IconClose.vue.d.ts +1 -1
- package/dist/components/IconSend.vue.d.ts +1 -1
- package/dist/components/IconTelegram.vue.d.ts +1 -1
- package/dist/components/IconWhatsApp.vue.d.ts +1 -1
- package/dist/components/Loader.vue.d.ts +1 -1
- package/dist/components/MessageList.vue.d.ts +2 -3
- package/dist/components/ODialog/IPropsDialog.d.ts +1 -0
- package/dist/components/ODialog/ODialog.vue.d.ts +15 -13
- package/dist/components/Widget.vue.d.ts +2 -1
- package/dist/dto/app.dto.d.ts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/main.d.ts +1 -0
- package/dist/store/config.d.ts +1 -0
- package/dist/store/index.d.ts +1 -0
- package/dist/style.css +1 -1
- package/dist/vue-wiguet-chatweb.js +1769 -1829
- package/dist/vue-wiguet-chatweb.umd.cjs +26 -26
- package/package.json +66 -66
- package/src/assets/emojis/AngryIcon.svg +4 -4
- package/src/assets/emojis/HappiestIcon.svg +4 -4
- package/src/assets/emojis/HappyIcon.svg +4 -4
- package/src/assets/emojis/NeutralIcon.svg +4 -4
- package/src/assets/emojis/SadIcon.svg +4 -4
- package/src/components/Chat.vue +691 -691
- package/src/components/ChatMessage.vue +102 -102
- package/src/components/DangerIcon.vue +12 -12
- package/src/components/IconAttach.vue +24 -24
- package/src/components/IconChat.vue +23 -23
- package/src/components/IconClose.vue +5 -5
- package/src/components/IconSend.vue +8 -8
- package/src/components/IconTelegram.vue +28 -28
- package/src/components/IconWhatsApp.vue +39 -39
- package/src/components/IconWidget.vue +45 -45
- package/src/components/Loader.vue +31 -31
- package/src/components/LoadingComponent.vue +111 -111
- package/src/components/MessageList.vue +357 -357
- package/src/components/ODialog/IPropsDialog.ts +4 -4
- package/src/components/ODialog/IPropsSidebar.ts +13 -13
- package/src/components/ODialog/ODialog.vue +106 -84
- package/src/components/Widget.vue +187 -205
- package/src/components/__tests__/Chat.spec.ts +5 -5
- package/src/components/__tests__/ChatMessage.spec.ts +5 -5
- package/src/components/__tests__/MessageList.spec.ts +47 -47
- package/dist/App.vue.d.ts +0 -2
- package/dist/components/ChatMessage.vue.d.ts +0 -12
package/README.md
CHANGED
@@ -1,68 +1,68 @@
|
|
1
|
-
## Descripcion
|
2
|
-
|
3
|
-
Paquete para el uso de CHAT CENTRAL mediante un widget chat,
|
4
|
-
|
5
|
-
## Instalacion
|
6
|
-
|
7
|
-
Instalacion del paquete
|
8
|
-
```
|
9
|
-
npm i vue-wiguet-chatweb
|
10
|
-
```
|
11
|
-
## Variables de Entorno
|
12
|
-
```env
|
13
|
-
VITE_BACKEND_URL=https://...
|
14
|
-
VITE_SOCKET_URI=http://...
|
15
|
-
VITE_CELLPHONE_NUMBERS=591...
|
16
|
-
```
|
17
|
-
## configuracion de variables de Entorno
|
18
|
-
```typescript
|
19
|
-
|
20
|
-
import widgetChatCentral from 'vue-wiguet-chatweb'
|
21
|
-
|
22
|
-
const app = createApp(App);
|
23
|
-
|
24
|
-
app.use(widgetChatCentral, {
|
25
|
-
VITE_BACKEND_URL: import.meta.env.VITE_BACKEND_URL,
|
26
|
-
VITE_SOCKET_URI: import.meta.env.VITE_SOCKET_URI,
|
27
|
-
VITE_CELLPHONE_NUMBERS: import.meta.env.VITE_CELLPHONE_NUMBERS,
|
28
|
-
});
|
29
|
-
|
30
|
-
app.mount('#app');
|
31
|
-
```
|
32
|
-
### phoneUser: Registrado en RRHH
|
33
|
-
### tokenAuth: Auth MS-Seguridad V2
|
34
|
-
|
35
|
-
## Instalacion y Uso del Widget
|
36
|
-
Configuracion de Paquete en el componente
|
37
|
-
```typescript
|
38
|
-
|
39
|
-
<template>
|
40
|
-
<div>
|
41
|
-
<Widget
|
42
|
-
titlePrincipal="titlePrincipal"
|
43
|
-
:tokenAuth="token"
|
44
|
-
:phoneUser="phone"
|
45
|
-
@show-confirm="(e:any) => {
|
46
|
-
e()
|
47
|
-
}"
|
48
|
-
:user="{
|
49
|
-
nombreCompleto: '',
|
50
|
-
ci: '',
|
51
|
-
msPersonaId: 12345,
|
52
|
-
}"
|
53
|
-
/>
|
54
|
-
</div>
|
55
|
-
</template>
|
56
|
-
|
57
|
-
|
58
|
-
<script setup lang="ts">
|
59
|
-
import Widget from './components/Widget.vue';
|
60
|
-
const token = 'ciOi.....'
|
61
|
-
const phone = '76177719'
|
62
|
-
</script>
|
63
|
-
|
64
|
-
<style scoped>
|
65
|
-
@import url(/node_modules/vue-wiguet-chatweb/dist/style.css);
|
66
|
-
</style>
|
67
|
-
|
68
|
-
```
|
1
|
+
## Descripcion
|
2
|
+
|
3
|
+
Paquete para el uso de CHAT CENTRAL mediante un widget chat,
|
4
|
+
|
5
|
+
## Instalacion
|
6
|
+
|
7
|
+
Instalacion del paquete
|
8
|
+
```
|
9
|
+
npm i vue-wiguet-chatweb
|
10
|
+
```
|
11
|
+
## Variables de Entorno
|
12
|
+
```env
|
13
|
+
VITE_BACKEND_URL=https://...
|
14
|
+
VITE_SOCKET_URI=http://...
|
15
|
+
VITE_CELLPHONE_NUMBERS=591...
|
16
|
+
```
|
17
|
+
## configuracion de variables de Entorno
|
18
|
+
```typescript
|
19
|
+
|
20
|
+
import widgetChatCentral from 'vue-wiguet-chatweb'
|
21
|
+
|
22
|
+
const app = createApp(App);
|
23
|
+
|
24
|
+
app.use(widgetChatCentral, {
|
25
|
+
VITE_BACKEND_URL: import.meta.env.VITE_BACKEND_URL,
|
26
|
+
VITE_SOCKET_URI: import.meta.env.VITE_SOCKET_URI,
|
27
|
+
VITE_CELLPHONE_NUMBERS: import.meta.env.VITE_CELLPHONE_NUMBERS,
|
28
|
+
});
|
29
|
+
|
30
|
+
app.mount('#app');
|
31
|
+
```
|
32
|
+
### phoneUser: Registrado en RRHH
|
33
|
+
### tokenAuth: Auth MS-Seguridad V2
|
34
|
+
|
35
|
+
## Instalacion y Uso del Widget
|
36
|
+
Configuracion de Paquete en el componente
|
37
|
+
```typescript
|
38
|
+
|
39
|
+
<template>
|
40
|
+
<div>
|
41
|
+
<Widget
|
42
|
+
titlePrincipal="titlePrincipal"
|
43
|
+
:tokenAuth="token"
|
44
|
+
:phoneUser="phone"
|
45
|
+
@show-confirm="(e:any) => {
|
46
|
+
e()
|
47
|
+
}"
|
48
|
+
:user="{
|
49
|
+
nombreCompleto: '',
|
50
|
+
ci: '',
|
51
|
+
msPersonaId: 12345,
|
52
|
+
}"
|
53
|
+
/>
|
54
|
+
</div>
|
55
|
+
</template>
|
56
|
+
|
57
|
+
|
58
|
+
<script setup lang="ts">
|
59
|
+
import Widget from './components/Widget.vue';
|
60
|
+
const token = 'ciOi.....'
|
61
|
+
const phone = '76177719'
|
62
|
+
</script>
|
63
|
+
|
64
|
+
<style scoped>
|
65
|
+
@import url(/node_modules/vue-wiguet-chatweb/dist/style.css);
|
66
|
+
</style>
|
67
|
+
|
68
|
+
```
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { PropType } from 'vue';
|
2
|
+
|
2
3
|
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
3
4
|
titlePrincipal: {
|
4
5
|
type: StringConstructor;
|
@@ -65,9 +66,5 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
65
66
|
"onNot-viewed-total"?: ((...args: any[]) => any) | undefined;
|
66
67
|
}>, {
|
67
68
|
titlePrincipal: string;
|
68
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
|
69
|
-
messageContainerRef: HTMLDivElement;
|
70
|
-
textAreaRef: HTMLTextAreaElement;
|
71
|
-
fileInputRef: HTMLInputElement;
|
72
|
-
}, any>;
|
69
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
73
70
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,2 +1,2 @@
|
|
1
|
-
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
1
|
+
declare const _default: import('vue').DefineComponent<{}, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
2
2
|
export default _default;
|
@@ -1,5 +1,6 @@
|
|
1
1
|
import { PropType } from 'vue';
|
2
2
|
import { Message } from '../dto/app.dto';
|
3
|
+
|
3
4
|
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
4
5
|
messages: {
|
5
6
|
type: PropType<Message[]>;
|
@@ -31,7 +32,5 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
31
32
|
}>, {
|
32
33
|
messages: Message[];
|
33
34
|
canLoadMoreMessages: boolean;
|
34
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
|
35
|
-
target: HTMLDivElement;
|
36
|
-
}, any>;
|
35
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
37
36
|
export default _default;
|
@@ -1,20 +1,22 @@
|
|
1
1
|
import { IPropsDialog } from './IPropsDialog';
|
2
|
-
|
3
|
-
|
4
|
-
slots: {
|
5
|
-
default?(_: {}): any;
|
6
|
-
};
|
7
|
-
refs: {};
|
8
|
-
rootEl: any;
|
9
|
-
};
|
10
|
-
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
|
11
|
-
declare const __VLS_component: import('vue').DefineComponent<IPropsDialog, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
2
|
+
|
3
|
+
declare const _default: __VLS_WithTemplateSlots<import('vue').DefineComponent<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<IPropsDialog>>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
|
12
4
|
"update:modelValue": (...args: any[]) => void;
|
13
|
-
}, string, import('vue').PublicProps, Readonly<IPropsDialog
|
5
|
+
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<__VLS_TypePropsToRuntimeProps<IPropsDialog>>> & Readonly<{
|
14
6
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
15
|
-
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions,
|
16
|
-
|
7
|
+
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>, {
|
8
|
+
default?(_: {}): any;
|
9
|
+
}>;
|
17
10
|
export default _default;
|
11
|
+
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
12
|
+
type __VLS_TypePropsToRuntimeProps<T> = {
|
13
|
+
[K in keyof T]-?: {} extends Pick<T, K> ? {
|
14
|
+
type: import('vue').PropType<__VLS_NonUndefinedable<T[K]>>;
|
15
|
+
} : {
|
16
|
+
type: import('vue').PropType<T[K]>;
|
17
|
+
required: true;
|
18
|
+
};
|
19
|
+
};
|
18
20
|
type __VLS_WithTemplateSlots<T, S> = T & {
|
19
21
|
new (): {
|
20
22
|
$slots: S;
|
@@ -1,4 +1,5 @@
|
|
1
1
|
import { PropType } from 'vue';
|
2
|
+
|
2
3
|
declare const _default: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
|
3
4
|
tokenAuth: {
|
4
5
|
type: StringConstructor;
|
@@ -49,5 +50,5 @@ declare const _default: import('vue').DefineComponent<import('vue').ExtractPropT
|
|
49
50
|
"onShow-confirm"?: ((...args: any[]) => any) | undefined;
|
50
51
|
}>, {
|
51
52
|
isDarkMode: boolean;
|
52
|
-
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {},
|
53
|
+
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
|
53
54
|
export default _default;
|
package/dist/dto/app.dto.d.ts
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/main.d.ts
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
|
package/dist/store/config.d.ts
CHANGED
package/dist/store/index.d.ts
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
import { ListMessageBody, ChatInformation, SendMessageBody, Message } from '../dto/app.dto';
|
2
|
+
|
2
3
|
export declare const messagesByAppAndPhone: (data?: any) => Promise<any>;
|
3
4
|
export declare const sendMessageByAppAndPhone: (data?: any) => Promise<void>;
|
4
5
|
export declare function getMessagesApi(data: {
|
package/dist/style.css
CHANGED
@@ -1 +1 @@
|
|
1
|
-
.bubble[data-v-
|
1
|
+
.bubble[data-v-174338df]{--r: 25px;--t: 30px;padding:calc(2 * var(--r) / 3);-webkit-mask:radial-gradient(var(--t) at var(--_d) 0,#0000 98%,#000 102%) var(--_d) 100% / calc(100% - var(--r)) var(--t) no-repeat,conic-gradient(at var(--r) var(--r),#000 75%,#0000 0) calc(var(--r) / -2) calc(var(--r) / -2) padding-box,radial-gradient(50% 50%,#000 98%,#0000 101%) 0 0 / var(--r) var(--r) space padding-box;mask:radial-gradient(var(--t) at var(--_d) 0,#0000 98%,#000 102%) var(--_d) 100% / calc(100% - var(--r)) var(--t) no-repeat,conic-gradient(at var(--r) var(--r),#000 75%,#0000 0) calc(var(--r) / -2) calc(var(--r) / -2) padding-box,radial-gradient(50% 50%,#000 98%,#0000 101%) 0 0 / var(--r) var(--r) space padding-box;color:#fff;height:100%}.left[data-v-174338df]{--_d: 0%;border-left:var(--t) solid #0000;margin-right:0;background-color:#fcd7ae;color:#4d4d4d}.bubble>.content-left[data-v-174338df]{margin-right:10px;margin-bottom:1px}.right[data-v-174338df]{--_d: 100%;border-right:var(--t) solid #0000;margin-right:0;background-color:#fdeedb;color:#4d4d4d}.bubble>.content-right[data-v-174338df]{margin-bottom:1px;margin-right:10px}.message-text[data-v-174338df]{margin-bottom:10px;overflow-wrap:break-word}.detail-message[data-v-174338df]{font-size:10px;color:gray;display:flex;justify-content:space-between}.chat-message[data-v-174338df]{display:flex;flex-direction:column;justify-content:center}.message[data-v-174338df]{width:100%;display:flex}.message-left[data-v-174338df]{justify-content:start}.message-right[data-v-174338df]{justify-content:end}.target[data-v-174338df]{padding:.5rem 0;width:100%}.btn-danger[data-v-174338df]{background-color:transparent;border:0;border-radius:50%;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center}.btn-danger svg[data-v-174338df]{width:24px;height:24px}.btn-danger[data-v-174338df]:hover{background-color:#ff00003a}.btn-container-widget[data-v-174338df]{display:flex;align-items:center;position:absolute;left:-40px;top:50%;transform:translateY(-50%)}.message-container[data-v-174338df]{min-width:80%;max-width:80%;position:relative;margin-bottom:.5rem}.messages-container-list[data-v-174338df]{width:100%}.icon[data-v-174338df]{width:2rem}.btn-icon[data-v-174338df]{text-decoration:none;border:none;color:#9ca3af}.btn-icon[data-v-174338df]:hover:not(.content-disabled){color:#1f2937}.btn-icon span[data-v-174338df]{text-wrap:nowrap}.btn-icon .icon[data-v-174338df]{font-size:2rem}.content-disabled[data-v-174338df]{-webkit-filter:grayscale(1);filter:grayscale(1);opacity:.5}.spinner_ajPY[data-v-fbd4d28f]{fill:#fe6d00;transform-origin:center;animation:spinner_AtaB-fbd4d28f .75s infinite linear}@keyframes spinner_AtaB-fbd4d28f{to{transform:rotate(360deg)}}.dialog-overlay[data-v-3ae4d7ec]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#00000080;display:flex;justify-content:center;align-items:center;opacity:0;animation:fadeIn-3ae4d7ec .3s forwards}.dialog-content[data-v-3ae4d7ec]{background-color:#fff;padding:15px;border-radius:8px;text-align:center;animation:slideIn-3ae4d7ec .3s ease-out forwards}@keyframes fadeIn-3ae4d7ec{to{opacity:1}}@keyframes slideIn-3ae4d7ec{0%{transform:translateY(-50px)}to{transform:translateY(0)}}.dialog-overlay.v-enter-active[data-v-3ae4d7ec],.dialog-overlay.v-leave-active[data-v-3ae4d7ec]{transition:opacity .3s}.btn-close[data-v-3ae4d7ec]{padding:0;background-color:transparent;border:none;display:flex;align-items:center;border-radius:50%}.btn-close[data-v-3ae4d7ec]:hover{background-color:#cacaca88}.btn-primary[data-v-bf9ef2ee]{padding:10px 12px}.btn-primary[data-v-bf9ef2ee]:hover{background-color:#f28b0c1a}.btn-close[data-v-bf9ef2ee]{padding:0;background-color:transparent;border:none;display:flex;align-items:center;border-radius:50%}.btn-close[data-v-bf9ef2ee]:hover{background-color:#cacaca88}.messages-container[data-v-bf9ef2ee]{position:relative}.loader[data-v-bf9ef2ee]{position:absolute;top:18px;z-index:5;left:50%;transform:translate(-50%,-50%)}.fit[data-v-bf9ef2ee]{width:100%;height:100%;position:relative}.center[data-v-bf9ef2ee]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.message-send-block[data-v-bf9ef2ee]{display:block;margin:1.5rem;text-align:center}.header-widget{height:5%;display:flex;justify-content:space-between;align-items:center}.jl2-input-chat{height:20px;width:95%;border:none;resize:none;margin-left:8px;margin-top:8px;margin-bottom:8px;overflow:hidden;max-height:10rem}.jl2-input-chat:focus-visible{outline:none}.jl-inputgroup-chat{width:100%;border:1px solid;border-color:#f28b0c;background:var(--surface-a);color:var(--surface-500);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:13px;display:flex;justify-content:space-around;align-items:center}.jl-inputgroup-chat>input{border:none;background:none}.jl-inputgroup-chat>input:hover{outline:none}.form-message{display:flex;justify-content:space-between}.form-message button,.jl-inputgroup-chat>button{border:none!important;background:none}.form-message button,.jl-inputgroup-chat>button:focus{box-shadow:none}.form-message button,.jl-inputgroup-chat>button:active{box-shadow:none}.widget{margin:auto;height:100%;display:flex;width:100%;flex-direction:column;justify-content:space-evenly}.messages-container{height:80%;overflow-y:scroll;border:1px solid lightgray;border-radius:.5rem;scrollbar-color:red transparent;scrollbar-width:thin;scrollbar-color:#F28B0C transparent;scrollbar-track-color:transparent;scrollbar-face-color:#F28B0C;scrollbar-thumb-color:#F28B0C}.messages-container::-webkit-scrollbar{width:8px}.messages-container::-webkit-scrollbar-track{background-color:transparent}.messages-container::-webkit-scrollbar-thumb{background-color:#f28b0c;border-radius:8px}.input-message{border-left:1px solid var(--fge-gray-lines-color);border-right:1px solid var(--fge-gray-lines-color)}.message-send{padding-top:20px;width:90%;margin:auto}#chat-circle{margin:auto;position:fixed;bottom:50px;right:50px;color:#fff;cursor:pointer}.title-chat{font-size:1rem;font-weight:700;color:var(--chat-text-color);margin:0}.chat-box{display:flex;justify-content:center;align-items:center;border:2px solid #d9d9d9;border-radius:25px;padding:5px 15px 30px;background:#fff;position:fixed;right:30px;bottom:50px;width:450px;height:70vh;max-width:85vw;max-height:80vh;box-shadow:0 5px 35px 9px #ccc}.pointer{cursor:pointer}.w-full{width:100%}.widget-component .flex{display:flex;flex-wrap:wrap}.widget-component .flex-col{flex-direction:column}.widget-component .items-center{align-items:center}.widget-component .gap-2{gap:.5rem}.widget-component .mb-2{margin-bottom:8px}.widget-component .mt-2{margin-top:8px}.widget-component .justify-between{justify-content:space-between}.disabled[data-v-74c6ab0f]{color:currentColor;cursor:not-allowed!important;opacity:.4!important;text-decoration:none}.container-buttons-chat[data-v-74c6ab0f]{position:relative;right:-1.8rem}.button[data-v-74c6ab0f]{position:absolute;width:2.5rem;height:2.5rem;opacity:0;box-shadow:0 1px 3px 1px silver;border-radius:100%;border:1px solid white;background-color:#fff;overflow:hidden;cursor:pointer;transition:transform .5s ease,opacity .3s ease;z-index:-1}.container-buttons-chat.active>a[data-v-74c6ab0f]{z-index:1;opacity:1}.container-buttons-chat.active .whatsapp[data-v-74c6ab0f]{transform:translateY(-150px)}.container-buttons-chat.active .telegram[data-v-74c6ab0f]{transform:translateY(-100px)}.container-buttons-chat.active .webchat[data-v-74c6ab0f]{transform:translateY(-50px)}.widget-container[data-v-74c6ab0f]{position:relative}.new-message-badge[data-v-74c6ab0f]{position:absolute;background-color:red;width:30px;height:30px;display:flex;font-family:Roboto,sans-serif;align-items:center;font-weight:500;justify-content:center;border-radius:50%;right:-2px;top:-4px;z-index:2}
|