contactstudiocstools 1.0.235 → 1.0.237
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/dist/module.json +1 -1
- package/dist/runtime/components/Atom.ChatContact.vue +1 -26
- package/dist/runtime/components/Organism.ChatRoom.vue +26 -35
- package/dist/runtime/components/Organism.FAQ.vue +1 -23
- package/dist/runtime/components/types/helpers.mjs +4 -1
- package/package.json +1 -1
- package/dist/runtime/components/Molecule.Modal.vue +0 -59
package/dist/module.json
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
<template>
|
|
2
|
-
<AtomExpertiseBar
|
|
3
|
-
:expertise="expertise"
|
|
4
|
-
:removeBorder="true"
|
|
5
|
-
/>
|
|
6
2
|
<!-- contact -->
|
|
7
3
|
<li class="item flex items-center max-h-none !px-3 !rounded-none">
|
|
8
4
|
<!-- avatar -->
|
|
@@ -103,9 +99,6 @@ const getStatusClass = computed<string>(() => {
|
|
|
103
99
|
if (props.contact.on) return "avatar-status-success";
|
|
104
100
|
return "avatar-status-error";
|
|
105
101
|
});
|
|
106
|
-
const expertise = computed<string>(() => {
|
|
107
|
-
return props.contact?.primitive?.expertise || ''
|
|
108
|
-
})
|
|
109
102
|
|
|
110
103
|
// data
|
|
111
104
|
const expirated = ref<boolean>(false);
|
|
@@ -132,7 +125,7 @@ async function setTimerContact(): Promise<void> {
|
|
|
132
125
|
setTimerContact()
|
|
133
126
|
</script>
|
|
134
127
|
|
|
135
|
-
<style>
|
|
128
|
+
<style scoped>
|
|
136
129
|
.min-w-40px {
|
|
137
130
|
min-width: 40px;
|
|
138
131
|
}
|
|
@@ -140,22 +133,4 @@ setTimerContact()
|
|
|
140
133
|
.text-2xs {
|
|
141
134
|
font-size: 0.7rem;
|
|
142
135
|
}
|
|
143
|
-
|
|
144
|
-
:root {
|
|
145
|
-
--badge-background-color: #fff;
|
|
146
|
-
--badge-text-color: #9333EA;
|
|
147
|
-
--badge-border-color: #e2e8f0;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
.badge-expertise {
|
|
151
|
-
background-color: var(--badge-background-color);
|
|
152
|
-
color: var(--badge-text-color);
|
|
153
|
-
border: 1px solid var(--badge-border-color);
|
|
154
|
-
font-weight: 500;
|
|
155
|
-
}
|
|
156
|
-
.dark .badge-expertise {
|
|
157
|
-
background-color: #1e293b!important;
|
|
158
|
-
border: 1px solid #334155!important;
|
|
159
|
-
color: #A855F7;
|
|
160
|
-
}
|
|
161
136
|
</style>
|
|
@@ -5,44 +5,35 @@
|
|
|
5
5
|
class="w-full flex flex-col max-h-screen"
|
|
6
6
|
>
|
|
7
7
|
<!-- header -->
|
|
8
|
-
<header class="flex
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
8
|
+
<header class="flex items-center h-12 px-5">
|
|
9
|
+
<!-- avatar -->
|
|
10
|
+
<figure
|
|
11
|
+
:class="[getStatusClass]"
|
|
12
|
+
class="w-10 h-10 avatar avatar-soft-secondary"
|
|
13
|
+
>
|
|
14
|
+
<img
|
|
15
|
+
v-if="contact.avatar"
|
|
16
|
+
:src="contact.avatar"
|
|
17
|
+
class="rounded-md"
|
|
14
18
|
>
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
<i
|
|
21
|
-
v-else
|
|
22
|
-
class="bi-person-fill text-xl"
|
|
23
|
-
/>
|
|
24
|
-
</figure>
|
|
25
|
-
|
|
26
|
-
<!-- info -->
|
|
27
|
-
<div class="ml-3">
|
|
28
|
-
<p
|
|
29
|
-
class="text-sm"
|
|
30
|
-
v-text="contact?.label"
|
|
31
|
-
/>
|
|
32
|
-
<p
|
|
33
|
-
v-if="contact.typing"
|
|
34
|
-
class="text-success text-xs"
|
|
35
|
-
>
|
|
36
|
-
Digitando...
|
|
37
|
-
</p>
|
|
38
|
-
</div>
|
|
19
|
+
<i
|
|
20
|
+
v-else
|
|
21
|
+
class="bi-person-fill text-xl"
|
|
22
|
+
/>
|
|
23
|
+
</figure>
|
|
39
24
|
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
25
|
+
<!-- info -->
|
|
26
|
+
<div class="ml-3">
|
|
27
|
+
<p
|
|
28
|
+
class="text-sm"
|
|
29
|
+
v-text="contact?.label"
|
|
45
30
|
/>
|
|
31
|
+
<p
|
|
32
|
+
v-if="contact.typing"
|
|
33
|
+
class="text-success text-xs"
|
|
34
|
+
>
|
|
35
|
+
Digitando...
|
|
36
|
+
</p>
|
|
46
37
|
</div>
|
|
47
38
|
</header>
|
|
48
39
|
|
|
@@ -10,13 +10,6 @@
|
|
|
10
10
|
>
|
|
11
11
|
<i class="bi-search addon w-10" />
|
|
12
12
|
</label>
|
|
13
|
-
|
|
14
|
-
<div class="markdown">
|
|
15
|
-
<div class="flex justify-between" v-for="({ answer, question, primitive }, i) in getDoubtsBySearch">
|
|
16
|
-
<div v-html="question" />
|
|
17
|
-
<i @click="modalOpen({ answer, question, primitive })" class="bi bi-eye-fill text-slate-500 px-1 text-base leading-3 cursor-pointer" />
|
|
18
|
-
</div>
|
|
19
|
-
</div>
|
|
20
13
|
<!-- accordion -->
|
|
21
14
|
<div class="accordion markdown">
|
|
22
15
|
<details
|
|
@@ -40,18 +33,6 @@
|
|
|
40
33
|
</details>
|
|
41
34
|
</div>
|
|
42
35
|
</aside>
|
|
43
|
-
<!-- <MoleculeModal
|
|
44
|
-
:open="openModal"
|
|
45
|
-
@close="openModal = false"
|
|
46
|
-
:modalStyle="
|
|
47
|
-
`w-screen max-h-[95vh] max-w-xl z-50 !px-5 !pt-10 overflow-auto`
|
|
48
|
-
"
|
|
49
|
-
title="Novo Produto"
|
|
50
|
-
>
|
|
51
|
-
<div>
|
|
52
|
-
etesdawd
|
|
53
|
-
</div>
|
|
54
|
-
</MoleculeModal> -->
|
|
55
36
|
</template>
|
|
56
37
|
|
|
57
38
|
<script setup lang="ts">
|
|
@@ -59,7 +40,6 @@ import { marked } from "marked";
|
|
|
59
40
|
import { ref, onMounted, computed } from "vue";
|
|
60
41
|
import { IDoubts } from "./types";
|
|
61
42
|
import { useNuxtApp } from "#app";
|
|
62
|
-
import MoleculeModal from "./Molecule.Modal.vue";
|
|
63
43
|
|
|
64
44
|
// props
|
|
65
45
|
interface IProps {
|
|
@@ -98,9 +78,7 @@ function init(): void {
|
|
|
98
78
|
async function copy(answer: string): Promise<void> {
|
|
99
79
|
$emit("faq:copy", answer);
|
|
100
80
|
}
|
|
101
|
-
|
|
102
|
-
$emit("faq:open", { answer, question, primitive });
|
|
103
|
-
}
|
|
81
|
+
|
|
104
82
|
// mounted
|
|
105
83
|
onMounted(() => {
|
|
106
84
|
init();
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { v4 } from "uuid";
|
|
2
|
+
import { useCookie } from "#app";
|
|
2
3
|
import {
|
|
3
4
|
EUserStatus,
|
|
4
5
|
ChatMessageTextDTO,
|
|
@@ -93,8 +94,10 @@ export async function searchZipCode({ models, field }) {
|
|
|
93
94
|
}
|
|
94
95
|
}
|
|
95
96
|
export async function logout(reason) {
|
|
97
|
+
const logoffCookie = useCookie("logoff_reason", { path: "/", maxAge: 120 });
|
|
98
|
+
logoffCookie.value = reason || "indefinido";
|
|
96
99
|
if (!process.dev) {
|
|
97
|
-
location.assign(
|
|
100
|
+
location.assign("/csapi/iam/ui/logoff");
|
|
98
101
|
}
|
|
99
102
|
}
|
|
100
103
|
export function getMinutesBetweenDates(start, end) {
|
package/package.json
CHANGED
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div>
|
|
3
|
-
<!-- DIV PARA BORRAR A TELA -->
|
|
4
|
-
<div @click="$emit('close')" v-show="open" class="fixed top-0 left-0 w-full h-full bg-gray-500 opacity-75 z-[50]"></div>
|
|
5
|
-
|
|
6
|
-
<!-- DIV DO MODAL -->
|
|
7
|
-
<div
|
|
8
|
-
v-show="open"
|
|
9
|
-
class="fixed z-50 border rounded-md bg-gray-100 dark:border-slate-800 dark:bg-slate-900 dark:text-white px-4 pt-12 pb-4 sm:px-6 lg:px-8"
|
|
10
|
-
:class="
|
|
11
|
-
modalStyle,
|
|
12
|
-
{
|
|
13
|
-
'top-1/2 left-1/2 transform -translate-x-1/2 -translate-y-1/2 transition': !alignRight,
|
|
14
|
-
'transition top-1/4 right-[-5px] rig h-[60vh]': alignRight
|
|
15
|
-
}"
|
|
16
|
-
aria-modal="true"
|
|
17
|
-
role="dialog"
|
|
18
|
-
tabindex="-1"
|
|
19
|
-
>
|
|
20
|
-
<button
|
|
21
|
-
@click="$emit('close')"
|
|
22
|
-
class="absolute transition end-4 top-4 hover:scale-110"
|
|
23
|
-
>
|
|
24
|
-
<svg
|
|
25
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
26
|
-
fill="none"
|
|
27
|
-
viewBox="0 0 24 24"
|
|
28
|
-
stroke-width="2"
|
|
29
|
-
stroke="currentColor"
|
|
30
|
-
class="h-5 w-5"
|
|
31
|
-
>
|
|
32
|
-
<path stroke-linecap="round" stroke-linejoin="round" d="M6 18L18 6M6 6l12 12" />
|
|
33
|
-
</svg>
|
|
34
|
-
</button>
|
|
35
|
-
|
|
36
|
-
<!-- TITULO DO MODAL -->
|
|
37
|
-
<div v-if="title" class="relative flex items-center justify-center mb-8">
|
|
38
|
-
<h3 class="absolute text-lg font-bold " >
|
|
39
|
-
{{ title }}
|
|
40
|
-
</h3>
|
|
41
|
-
</div>
|
|
42
|
-
|
|
43
|
-
<!-- CONTEUDO DO MODAL -->
|
|
44
|
-
<slot />
|
|
45
|
-
|
|
46
|
-
</div>
|
|
47
|
-
</div>
|
|
48
|
-
|
|
49
|
-
</template>
|
|
50
|
-
<script setup lang="ts">
|
|
51
|
-
defineProps({
|
|
52
|
-
open: Boolean,
|
|
53
|
-
title: String,
|
|
54
|
-
modalStyle: String,
|
|
55
|
-
alignRight: Boolean
|
|
56
|
-
})
|
|
57
|
-
|
|
58
|
-
defineEmits(['close'])
|
|
59
|
-
</script>
|