@phonghq/go-chat 1.0.73 → 1.0.75
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/assets/icons/chat/IconCalendar.vue.d.ts +14 -0
- package/dist/assets/icons/chat/IconCalendar.vue.js +42 -0
- package/dist/assets/icons/chat/IconCheck.vue.d.ts +2 -0
- package/dist/assets/icons/chat/IconCheck.vue.js +22 -0
- package/dist/assets/icons/chat/IconCopy.vue.d.ts +2 -0
- package/dist/assets/icons/chat/IconCopy.vue.js +22 -0
- package/dist/assets/icons/chat/IconInfo.vue.d.ts +2 -0
- package/dist/assets/icons/chat/IconInfo.vue.js +20 -0
- package/dist/assets/icons/chat/IconLink.vue.d.ts +14 -0
- package/dist/assets/icons/chat/IconLink.vue.js +42 -0
- package/dist/assets/icons/chat/IconMenuDot.vue.js +2 -2
- package/dist/assets/icons/chat/IconResend.vue.d.ts +2 -0
- package/dist/assets/icons/chat/IconResend.vue.js +48 -0
- package/dist/chat/App.vue.js +58 -46
- package/dist/chat/page/customer-detail/CustomerDetail.vue.js +7 -6
- package/dist/chat/page/home/ChatMessage.vue.d.ts +2 -0
- package/dist/chat/page/home/ChatMessage.vue.js +12 -6
- package/dist/chat/page/home/ChatMessageItem.vue.d.ts +2 -0
- package/dist/chat/page/home/ChatMessageItem.vue.js +145 -18
- package/dist/chat/page/home/Home.vue.d.ts +4 -1
- package/dist/chat/page/home/Home.vue.js +104 -58
- package/dist/chat/page/home/InputChat.vue.d.ts +3 -0
- package/dist/chat/page/home/InputChat.vue.js +6 -6
- package/dist/chat/page/home/header/DropdownInfo.vue.d.ts +6 -0
- package/dist/chat/page/home/header/DropdownInfo.vue.js +137 -0
- package/dist/chat/page/home/{HomeHeader.vue.d.ts → header/HomeHeader.vue.d.ts} +6 -2
- package/dist/chat/page/home/{HomeHeader.vue.js → header/HomeHeader.vue.js} +147 -86
- package/dist/components/chat/ScrollEvent/ScrollEvent.vue.js +4 -2
- package/dist/components/chat/common/popover/PopoverBase.vue.d.ts +2 -0
- package/dist/components/chat/common/popover/PopoverBase.vue.js +5 -1
- package/dist/components/ui/dropdown-menu/DropdownMenuSeparator.vue.js +2 -2
- package/dist/components/ui/popover/PopoverContent.vue.js +6 -2
- package/dist/constant/datetime.d.ts +1 -0
- package/dist/constant/datetime.js +2 -1
- package/dist/go-chat.es.js +11569 -11266
- package/dist/go-chat.umd.js +20 -20
- package/dist/plugins/axios.js +2 -2
- package/dist/style.css +1 -1
- package/dist/types/chat/global.d.ts +2 -1
- package/dist/utils/chat/chat-router.d.ts +2 -0
- package/dist/utils/chat/chat-router.js +9 -3
- package/dist/utils/chat/store/user.d.ts +1 -1
- package/dist/utils/chat/store/user.js +2 -1
- package/dist/utils/dayjs-helper.d.ts +3 -0
- package/dist/utils/dayjs-helper.js +8 -0
- package/package.json +1 -1
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/// <reference types="C:/phonghq/go-chat-v2/node_modules/.vue-global-types/vue_3.5_0.d.ts" />
|
|
2
|
+
import { PAGE } from '../../../../constant/general';
|
|
3
|
+
import { userHistory } from '../../../../utils/chat/store/user';
|
|
4
|
+
import { computed, ref } from 'vue';
|
|
5
|
+
import IconMenuDot from '../../../../assets/icons/chat/IconMenuDot.vue';
|
|
6
|
+
import DropdownBase from '../../../../components/common/dropdown/DropdownBase.vue';
|
|
7
|
+
import IconInfo from '../../../../assets/icons/chat/IconInfo.vue';
|
|
8
|
+
import IconCalendar from '../../../../assets/icons/chat/IconCalendar.vue';
|
|
9
|
+
import IconCheck from '../../../../assets/icons/chat/IconCheck.vue';
|
|
10
|
+
const props = withDefaults(defineProps(), {});
|
|
11
|
+
const customerDropContent = computed(() => {
|
|
12
|
+
return [
|
|
13
|
+
{
|
|
14
|
+
icon: IconInfo,
|
|
15
|
+
title: 'Profile',
|
|
16
|
+
click: goToViewUser,
|
|
17
|
+
disabled: false
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
icon: IconCalendar,
|
|
21
|
+
title: 'View Appointment',
|
|
22
|
+
click: goToViewAppointment,
|
|
23
|
+
disabled: !userHistory.value?.appointment?.length
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
icon: IconCheck,
|
|
27
|
+
title: 'View Checkin',
|
|
28
|
+
click: goToViewView,
|
|
29
|
+
disabled: !userHistory.value?.visit_count
|
|
30
|
+
}
|
|
31
|
+
];
|
|
32
|
+
});
|
|
33
|
+
const selectOpen = ref(false);
|
|
34
|
+
const goToViewUser = () => {
|
|
35
|
+
selectOpen.value = false;
|
|
36
|
+
props.goToPage(PAGE.CUSTOMER_DETAIL);
|
|
37
|
+
};
|
|
38
|
+
const goToViewAppointment = () => {
|
|
39
|
+
selectOpen.value = false;
|
|
40
|
+
props.goToPage(PAGE.CUSTOMER_APPOINTMENT);
|
|
41
|
+
};
|
|
42
|
+
const goToViewView = () => {
|
|
43
|
+
selectOpen.value = false;
|
|
44
|
+
props.goToPage(PAGE.CUSTOMER_CHECK_IN);
|
|
45
|
+
};
|
|
46
|
+
debugger; /* PartiallyEnd: #3632/scriptSetup.vue */
|
|
47
|
+
const __VLS_defaults = {};
|
|
48
|
+
const __VLS_ctx = {
|
|
49
|
+
...{},
|
|
50
|
+
...{},
|
|
51
|
+
...{},
|
|
52
|
+
...{},
|
|
53
|
+
};
|
|
54
|
+
let __VLS_elements;
|
|
55
|
+
let __VLS_components;
|
|
56
|
+
let __VLS_directives;
|
|
57
|
+
/** @type {[typeof DropdownBase, typeof DropdownBase, ]} */ ;
|
|
58
|
+
// @ts-ignore
|
|
59
|
+
const __VLS_0 = __VLS_asFunctionalComponent(DropdownBase, new DropdownBase({
|
|
60
|
+
side: "bottom",
|
|
61
|
+
align: "end",
|
|
62
|
+
open: (__VLS_ctx.selectOpen),
|
|
63
|
+
}));
|
|
64
|
+
const __VLS_1 = __VLS_0({
|
|
65
|
+
side: "bottom",
|
|
66
|
+
align: "end",
|
|
67
|
+
open: (__VLS_ctx.selectOpen),
|
|
68
|
+
}, ...__VLS_functionalComponentArgsRest(__VLS_0));
|
|
69
|
+
var __VLS_3 = {};
|
|
70
|
+
const { default: __VLS_4 } = __VLS_2.slots;
|
|
71
|
+
// @ts-ignore
|
|
72
|
+
[selectOpen,];
|
|
73
|
+
{
|
|
74
|
+
const { default: __VLS_5 } = __VLS_2.slots;
|
|
75
|
+
__VLS_asFunctionalElement(__VLS_elements.button, __VLS_elements.button)({
|
|
76
|
+
...{ class: "shrink-0 flex-center w-4" },
|
|
77
|
+
});
|
|
78
|
+
/** @type {[typeof IconMenuDot, ]} */ ;
|
|
79
|
+
// @ts-ignore
|
|
80
|
+
const __VLS_6 = __VLS_asFunctionalComponent(IconMenuDot, new IconMenuDot({
|
|
81
|
+
...{ class: "scale-[1.2]" },
|
|
82
|
+
}));
|
|
83
|
+
const __VLS_7 = __VLS_6({
|
|
84
|
+
...{ class: "scale-[1.2]" },
|
|
85
|
+
}, ...__VLS_functionalComponentArgsRest(__VLS_6));
|
|
86
|
+
}
|
|
87
|
+
{
|
|
88
|
+
const { content: __VLS_10 } = __VLS_2.slots;
|
|
89
|
+
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
90
|
+
...{ class: "text-chat-text" },
|
|
91
|
+
});
|
|
92
|
+
for (const [item, i] of __VLS_getVForSourceType((__VLS_ctx.customerDropContent))) {
|
|
93
|
+
// @ts-ignore
|
|
94
|
+
[customerDropContent,];
|
|
95
|
+
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
96
|
+
...{ onClick: (...[$event]) => {
|
|
97
|
+
item.click?.();
|
|
98
|
+
} },
|
|
99
|
+
...{ class: "flex items-center gap-2 p-2 hover:bg-chat-primary hover:text-white duration-200 cursor-pointer rounded-lg" },
|
|
100
|
+
key: (i),
|
|
101
|
+
...{ class: ({ 'opacity-[0.3] pointer-events-none': item.disabled }) },
|
|
102
|
+
});
|
|
103
|
+
const __VLS_11 = ((item.icon));
|
|
104
|
+
// @ts-ignore
|
|
105
|
+
const __VLS_12 = __VLS_asFunctionalComponent(__VLS_11, new __VLS_11({
|
|
106
|
+
...{ class: "w-5 h-5" },
|
|
107
|
+
}));
|
|
108
|
+
const __VLS_13 = __VLS_12({
|
|
109
|
+
...{ class: "w-5 h-5" },
|
|
110
|
+
}, ...__VLS_functionalComponentArgsRest(__VLS_12));
|
|
111
|
+
(item.title);
|
|
112
|
+
}
|
|
113
|
+
}
|
|
114
|
+
var __VLS_2;
|
|
115
|
+
/** @type {__VLS_StyleScopedClasses['shrink-0']} */ ;
|
|
116
|
+
/** @type {__VLS_StyleScopedClasses['flex-center']} */ ;
|
|
117
|
+
/** @type {__VLS_StyleScopedClasses['w-4']} */ ;
|
|
118
|
+
/** @type {__VLS_StyleScopedClasses['scale-[1.2]']} */ ;
|
|
119
|
+
/** @type {__VLS_StyleScopedClasses['text-chat-text']} */ ;
|
|
120
|
+
/** @type {__VLS_StyleScopedClasses['flex']} */ ;
|
|
121
|
+
/** @type {__VLS_StyleScopedClasses['items-center']} */ ;
|
|
122
|
+
/** @type {__VLS_StyleScopedClasses['gap-2']} */ ;
|
|
123
|
+
/** @type {__VLS_StyleScopedClasses['p-2']} */ ;
|
|
124
|
+
/** @type {__VLS_StyleScopedClasses['hover:bg-chat-primary']} */ ;
|
|
125
|
+
/** @type {__VLS_StyleScopedClasses['hover:text-white']} */ ;
|
|
126
|
+
/** @type {__VLS_StyleScopedClasses['duration-200']} */ ;
|
|
127
|
+
/** @type {__VLS_StyleScopedClasses['cursor-pointer']} */ ;
|
|
128
|
+
/** @type {__VLS_StyleScopedClasses['rounded-lg']} */ ;
|
|
129
|
+
/** @type {__VLS_StyleScopedClasses['opacity-[0.3]']} */ ;
|
|
130
|
+
/** @type {__VLS_StyleScopedClasses['pointer-events-none']} */ ;
|
|
131
|
+
/** @type {__VLS_StyleScopedClasses['w-5']} */ ;
|
|
132
|
+
/** @type {__VLS_StyleScopedClasses['h-5']} */ ;
|
|
133
|
+
const __VLS_export = (await import('vue')).defineComponent({
|
|
134
|
+
__typeProps: {},
|
|
135
|
+
props: {},
|
|
136
|
+
});
|
|
137
|
+
export default {};
|
|
@@ -1,14 +1,18 @@
|
|
|
1
|
-
import type { IResUser } from '
|
|
2
|
-
import type { PAGE_RESPONSIVE } from '
|
|
1
|
+
import type { IResUser } from '../../../../types/message';
|
|
2
|
+
import type { PAGE_RESPONSIVE, PARENT_PAGE_NAME } from '../../../../types/chat/global';
|
|
3
3
|
type Props = {
|
|
4
4
|
data: IResUser | null;
|
|
5
5
|
responsive: PAGE_RESPONSIVE | null;
|
|
6
|
+
parentPageName: PARENT_PAGE_NAME;
|
|
7
|
+
customerLoading: boolean;
|
|
6
8
|
};
|
|
7
9
|
declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
8
10
|
call: () => any;
|
|
9
11
|
back: () => any;
|
|
12
|
+
viewAppointment: (id: any) => any;
|
|
10
13
|
}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{
|
|
11
14
|
onCall?: (() => any) | undefined;
|
|
12
15
|
onBack?: (() => any) | undefined;
|
|
16
|
+
onViewAppointment?: ((id: any) => any) | undefined;
|
|
13
17
|
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
14
18
|
export default _default;
|
|
@@ -1,42 +1,52 @@
|
|
|
1
1
|
/// <reference types="C:/phonghq/go-chat-v2/node_modules/.vue-global-types/vue_3.5_0.d.ts" />
|
|
2
|
-
import IconPhone from '
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import
|
|
12
|
-
import {
|
|
13
|
-
import
|
|
14
|
-
import
|
|
15
|
-
import
|
|
16
|
-
import
|
|
2
|
+
import IconPhone from '../../../../assets/icons/global/IconPhone.vue';
|
|
3
|
+
import Avatar from '../../../../components/chat/customer/Avatar.vue';
|
|
4
|
+
import { routerPush } from '../../../../utils/chat/chat-router';
|
|
5
|
+
import { user, userHistory } from '../../../../utils/chat/store/user';
|
|
6
|
+
import { dataProfile } from '../../../../utils/chat/store/auth';
|
|
7
|
+
import { digibotId } from '../../../../composable/useDigibot';
|
|
8
|
+
import IconArrowLeft from '../../../../assets/icons/global/IconArrowLeft.vue';
|
|
9
|
+
import { phoneNumberFormat } from '../../../../utils/string-helper';
|
|
10
|
+
import IconSms from '../../../../assets/icons/global/IconSms.vue';
|
|
11
|
+
import { activePlivoMode } from '../../../../utils/chat/store/message';
|
|
12
|
+
import { computed, ref } from 'vue';
|
|
13
|
+
import ButtonBase from '../../../../components/common/button/ButtonBase.vue';
|
|
14
|
+
import IconCalendar from '../../../../assets/icons/chat/IconCalendar.vue';
|
|
15
|
+
import IconLink from '../../../../assets/icons/chat/IconLink.vue';
|
|
16
|
+
import { getTimeLocal } from '../../../../utils/dayjs-helper';
|
|
17
|
+
import { DATE_FORMATS } from '../../../../constant/datetime';
|
|
18
|
+
import BaseSpin from '../../../../components/chat/common/spin/BaseSpin.vue';
|
|
19
|
+
import DropdownInfo from '../../../../chat/page/home/header/DropdownInfo.vue';
|
|
20
|
+
import { PAGE } from '../../../../constant/general';
|
|
17
21
|
const props = withDefaults(defineProps(), {});
|
|
18
22
|
const emit = defineEmits();
|
|
23
|
+
const tabContent = computed(() => {
|
|
24
|
+
let result = [];
|
|
25
|
+
if (userHistory.value?.appointment?.length && props.parentPageName == 'booking-admin') {
|
|
26
|
+
const last_item = userHistory.value?.appointment[userHistory.value?.appointment?.length - 1];
|
|
27
|
+
result.push({
|
|
28
|
+
id: last_item.id,
|
|
29
|
+
icon: IconCalendar,
|
|
30
|
+
label: 'Last Appointment:',
|
|
31
|
+
time: getTimeLocal(last_item?.start_time)?.format(DATE_FORMATS['DATE_FORMAT_MEDIUM']) ?? '',
|
|
32
|
+
click: () => {
|
|
33
|
+
emit('viewAppointment', last_item.id);
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
return result;
|
|
38
|
+
});
|
|
19
39
|
const activePlivoSms = ref(dataProfile.value?.is_sms_active == 1);
|
|
20
40
|
const loading = ref(false);
|
|
21
|
-
const selectOpen = ref(false);
|
|
22
41
|
const goToViewUser = () => {
|
|
23
|
-
|
|
42
|
+
goToPage(PAGE.CUSTOMER_DETAIL);
|
|
43
|
+
};
|
|
44
|
+
const goToPage = (page) => {
|
|
24
45
|
if (props.data?.id.toString() == digibotId.toString())
|
|
25
46
|
return;
|
|
26
47
|
if (dataProfile.value?.user_type == 'tenant') {
|
|
27
48
|
user.value = props.data;
|
|
28
|
-
routerPush(
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
const customer_select_option = [
|
|
32
|
-
{ label: 'Profile', value: 0 },
|
|
33
|
-
{ label: 'Later Appointment', value: 1 }
|
|
34
|
-
];
|
|
35
|
-
const handleSelectChange = (value) => {
|
|
36
|
-
if (value == 0) {
|
|
37
|
-
goToViewUser();
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
49
|
+
routerPush(page);
|
|
40
50
|
}
|
|
41
51
|
};
|
|
42
52
|
const handleActivePlivoSmsChange = async (is_active) => {
|
|
@@ -66,15 +76,16 @@ const __VLS_ctx = {
|
|
|
66
76
|
let __VLS_elements;
|
|
67
77
|
let __VLS_components;
|
|
68
78
|
let __VLS_directives;
|
|
79
|
+
/** @type {__VLS_StyleScopedClasses['loading-container']} */ ;
|
|
69
80
|
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
70
|
-
...{ class: "w-full
|
|
81
|
+
...{ class: "w-full layout-shadow border-b border-chat-gray-5 z-10" },
|
|
82
|
+
});
|
|
83
|
+
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
84
|
+
...{ class: "w-full flex items-center gap-2 overflow-hidden h-[96px] px-8 py-4" },
|
|
71
85
|
...{ class: ({ '!px-4': __VLS_ctx.responsive == 'mobile' }) },
|
|
72
86
|
});
|
|
73
87
|
// @ts-ignore
|
|
74
88
|
[responsive,];
|
|
75
|
-
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
76
|
-
...{ class: "w-full flex items-center gap-2 h-full overflow-hidden" },
|
|
77
|
-
});
|
|
78
89
|
if (__VLS_ctx.responsive == 'mobile') {
|
|
79
90
|
// @ts-ignore
|
|
80
91
|
[responsive,];
|
|
@@ -128,7 +139,7 @@ __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
|
128
139
|
});
|
|
129
140
|
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
130
141
|
...{ onClick: (__VLS_ctx.goToViewUser) },
|
|
131
|
-
...{ class: "grow overflow-hidden" },
|
|
142
|
+
...{ class: "grow overflow-hidden " },
|
|
132
143
|
...{ class: ({ 'cursor-pointer': __VLS_ctx.dataProfile?.user_type == 'tenant' }) },
|
|
133
144
|
});
|
|
134
145
|
// @ts-ignore
|
|
@@ -207,7 +218,7 @@ if (__VLS_ctx.data?.id &&
|
|
|
207
218
|
// @ts-ignore
|
|
208
219
|
[emit,];
|
|
209
220
|
} },
|
|
210
|
-
...{ class: "shrink-0 flex-center text-[#
|
|
221
|
+
...{ class: "shrink-0 flex-center text-chat-primary-dark bg-[#e8f0fe] w-9 h-9 rounded-lg" },
|
|
211
222
|
});
|
|
212
223
|
/** @type {[typeof IconPhone, ]} */ ;
|
|
213
224
|
// @ts-ignore
|
|
@@ -219,70 +230,98 @@ if (__VLS_ctx.data?.id &&
|
|
|
219
230
|
__VLS_ctx.dataProfile?.user_type == 'tenant') {
|
|
220
231
|
// @ts-ignore
|
|
221
232
|
[dataProfile, data, data, digibotId,];
|
|
222
|
-
/** @type {[typeof
|
|
233
|
+
/** @type {[typeof DropdownInfo, ]} */ ;
|
|
223
234
|
// @ts-ignore
|
|
224
|
-
const __VLS_26 = __VLS_asFunctionalComponent(
|
|
225
|
-
|
|
226
|
-
align: "end",
|
|
227
|
-
open: (__VLS_ctx.selectOpen),
|
|
235
|
+
const __VLS_26 = __VLS_asFunctionalComponent(DropdownInfo, new DropdownInfo({
|
|
236
|
+
goToPage: (__VLS_ctx.goToPage),
|
|
228
237
|
}));
|
|
229
238
|
const __VLS_27 = __VLS_26({
|
|
230
|
-
|
|
231
|
-
align: "end",
|
|
232
|
-
open: (__VLS_ctx.selectOpen),
|
|
239
|
+
goToPage: (__VLS_ctx.goToPage),
|
|
233
240
|
}, ...__VLS_functionalComponentArgsRest(__VLS_26));
|
|
234
|
-
const { default: __VLS_29 } = __VLS_28.slots;
|
|
235
241
|
// @ts-ignore
|
|
236
|
-
[
|
|
237
|
-
|
|
238
|
-
|
|
242
|
+
[goToPage,];
|
|
243
|
+
}
|
|
244
|
+
if (__VLS_ctx.parentPageName) {
|
|
245
|
+
// @ts-ignore
|
|
246
|
+
[parentPageName,];
|
|
247
|
+
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
248
|
+
...{ class: "flex items-center border-chat-gray-5 loading-container h-12" },
|
|
249
|
+
...{ class: ({ 'show p-4 border-t': __VLS_ctx.customerLoading || __VLS_ctx.tabContent.length }) },
|
|
250
|
+
});
|
|
251
|
+
// @ts-ignore
|
|
252
|
+
[customerLoading, tabContent,];
|
|
253
|
+
/** @type {[typeof BaseSpin, ]} */ ;
|
|
254
|
+
// @ts-ignore
|
|
255
|
+
const __VLS_30 = __VLS_asFunctionalComponent(BaseSpin, new BaseSpin({
|
|
256
|
+
size: (16),
|
|
257
|
+
border: (1),
|
|
258
|
+
}));
|
|
259
|
+
const __VLS_31 = __VLS_30({
|
|
260
|
+
size: (16),
|
|
261
|
+
border: (1),
|
|
262
|
+
}, ...__VLS_functionalComponentArgsRest(__VLS_30));
|
|
263
|
+
__VLS_asFunctionalDirective(__VLS_directives.vShow)(null, { ...__VLS_directiveBindingRestFields, value: (__VLS_ctx.customerLoading) }, null, null);
|
|
264
|
+
// @ts-ignore
|
|
265
|
+
[customerLoading,];
|
|
266
|
+
for (const [tab, i] of __VLS_getVForSourceType((__VLS_ctx.tabContent))) {
|
|
267
|
+
// @ts-ignore
|
|
268
|
+
[tabContent,];
|
|
239
269
|
__VLS_asFunctionalElement(__VLS_elements.button, __VLS_elements.button)({
|
|
240
|
-
...{
|
|
270
|
+
...{ onClick: (...[$event]) => {
|
|
271
|
+
if (!(__VLS_ctx.parentPageName))
|
|
272
|
+
return;
|
|
273
|
+
tab.click?.();
|
|
274
|
+
} },
|
|
275
|
+
key: (i),
|
|
276
|
+
...{ class: "flex items-center h-8 gap-1.5 px-2.5 py-1 bg-[#e8f0fe] rounded-lg cursor-pointer transition-all duration-200 border-chat-primary text-sm text-chat-primary-dark" },
|
|
241
277
|
});
|
|
242
|
-
|
|
278
|
+
const __VLS_34 = ((tab.icon));
|
|
243
279
|
// @ts-ignore
|
|
244
|
-
const
|
|
245
|
-
...{ class: "
|
|
280
|
+
const __VLS_35 = __VLS_asFunctionalComponent(__VLS_34, new __VLS_34({
|
|
281
|
+
...{ class: "w-4 h-4" },
|
|
282
|
+
weight: "2.5",
|
|
246
283
|
}));
|
|
247
|
-
const
|
|
248
|
-
...{ class: "
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
284
|
+
const __VLS_36 = __VLS_35({
|
|
285
|
+
...{ class: "w-4 h-4" },
|
|
286
|
+
weight: "2.5",
|
|
287
|
+
}, ...__VLS_functionalComponentArgsRest(__VLS_35));
|
|
288
|
+
__VLS_asFunctionalElement(__VLS_elements.span, __VLS_elements.span)({
|
|
289
|
+
...{ class: "leading-xs" },
|
|
290
|
+
});
|
|
291
|
+
(tab.label);
|
|
292
|
+
__VLS_asFunctionalElement(__VLS_elements.span, __VLS_elements.span)({
|
|
293
|
+
...{ class: "font-semibold" },
|
|
255
294
|
});
|
|
295
|
+
(tab.time);
|
|
256
296
|
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
257
|
-
...{
|
|
258
|
-
if (!(__VLS_ctx.data?.id &&
|
|
259
|
-
__VLS_ctx.data?.id.toString() != __VLS_ctx.digibotId.toString() &&
|
|
260
|
-
__VLS_ctx.dataProfile?.user_type == 'tenant'))
|
|
261
|
-
return;
|
|
262
|
-
__VLS_ctx.goToViewUser();
|
|
263
|
-
// @ts-ignore
|
|
264
|
-
[goToViewUser,];
|
|
265
|
-
} },
|
|
266
|
-
...{ class: "p-2 hover:bg-chat-haze-200 duration-200 cursor-pointer rounded-lg" },
|
|
297
|
+
...{ class: "w-6 h-6 bg-white flex-center rounded-full" },
|
|
267
298
|
});
|
|
299
|
+
/** @type {[typeof IconLink, ]} */ ;
|
|
300
|
+
// @ts-ignore
|
|
301
|
+
const __VLS_39 = __VLS_asFunctionalComponent(IconLink, new IconLink({
|
|
302
|
+
...{ class: "w-4 h-4" },
|
|
303
|
+
weight: "2.5",
|
|
304
|
+
}));
|
|
305
|
+
const __VLS_40 = __VLS_39({
|
|
306
|
+
...{ class: "w-4 h-4" },
|
|
307
|
+
weight: "2.5",
|
|
308
|
+
}, ...__VLS_functionalComponentArgsRest(__VLS_39));
|
|
268
309
|
}
|
|
269
|
-
var __VLS_28;
|
|
270
310
|
}
|
|
271
311
|
/** @type {__VLS_StyleScopedClasses['w-full']} */ ;
|
|
272
|
-
/** @type {__VLS_StyleScopedClasses['px-8']} */ ;
|
|
273
|
-
/** @type {__VLS_StyleScopedClasses['py-4']} */ ;
|
|
274
|
-
/** @type {__VLS_StyleScopedClasses['h-[96px]']} */ ;
|
|
275
312
|
/** @type {__VLS_StyleScopedClasses['layout-shadow']} */ ;
|
|
276
313
|
/** @type {__VLS_StyleScopedClasses['border-b']} */ ;
|
|
277
314
|
/** @type {__VLS_StyleScopedClasses['border-chat-gray-5']} */ ;
|
|
278
315
|
/** @type {__VLS_StyleScopedClasses['z-10']} */ ;
|
|
279
|
-
/** @type {__VLS_StyleScopedClasses['!px-4']} */ ;
|
|
280
316
|
/** @type {__VLS_StyleScopedClasses['w-full']} */ ;
|
|
281
317
|
/** @type {__VLS_StyleScopedClasses['flex']} */ ;
|
|
282
318
|
/** @type {__VLS_StyleScopedClasses['items-center']} */ ;
|
|
283
319
|
/** @type {__VLS_StyleScopedClasses['gap-2']} */ ;
|
|
284
|
-
/** @type {__VLS_StyleScopedClasses['h-full']} */ ;
|
|
285
320
|
/** @type {__VLS_StyleScopedClasses['overflow-hidden']} */ ;
|
|
321
|
+
/** @type {__VLS_StyleScopedClasses['h-[96px]']} */ ;
|
|
322
|
+
/** @type {__VLS_StyleScopedClasses['px-8']} */ ;
|
|
323
|
+
/** @type {__VLS_StyleScopedClasses['py-4']} */ ;
|
|
324
|
+
/** @type {__VLS_StyleScopedClasses['!px-4']} */ ;
|
|
286
325
|
/** @type {__VLS_StyleScopedClasses['shrink-0']} */ ;
|
|
287
326
|
/** @type {__VLS_StyleScopedClasses['flex']} */ ;
|
|
288
327
|
/** @type {__VLS_StyleScopedClasses['items-center']} */ ;
|
|
@@ -317,22 +356,44 @@ if (__VLS_ctx.data?.id &&
|
|
|
317
356
|
/** @type {__VLS_StyleScopedClasses['md:block']} */ ;
|
|
318
357
|
/** @type {__VLS_StyleScopedClasses['shrink-0']} */ ;
|
|
319
358
|
/** @type {__VLS_StyleScopedClasses['flex-center']} */ ;
|
|
320
|
-
/** @type {__VLS_StyleScopedClasses['text-
|
|
321
|
-
/** @type {__VLS_StyleScopedClasses['bg-
|
|
359
|
+
/** @type {__VLS_StyleScopedClasses['text-chat-primary-dark']} */ ;
|
|
360
|
+
/** @type {__VLS_StyleScopedClasses['bg-[#e8f0fe]']} */ ;
|
|
322
361
|
/** @type {__VLS_StyleScopedClasses['w-9']} */ ;
|
|
323
362
|
/** @type {__VLS_StyleScopedClasses['h-9']} */ ;
|
|
324
363
|
/** @type {__VLS_StyleScopedClasses['rounded-lg']} */ ;
|
|
325
|
-
/** @type {__VLS_StyleScopedClasses['
|
|
364
|
+
/** @type {__VLS_StyleScopedClasses['flex']} */ ;
|
|
365
|
+
/** @type {__VLS_StyleScopedClasses['items-center']} */ ;
|
|
366
|
+
/** @type {__VLS_StyleScopedClasses['border-chat-gray-5']} */ ;
|
|
367
|
+
/** @type {__VLS_StyleScopedClasses['loading-container']} */ ;
|
|
368
|
+
/** @type {__VLS_StyleScopedClasses['h-12']} */ ;
|
|
369
|
+
/** @type {__VLS_StyleScopedClasses['show']} */ ;
|
|
370
|
+
/** @type {__VLS_StyleScopedClasses['p-4']} */ ;
|
|
371
|
+
/** @type {__VLS_StyleScopedClasses['border-t']} */ ;
|
|
372
|
+
/** @type {__VLS_StyleScopedClasses['flex']} */ ;
|
|
373
|
+
/** @type {__VLS_StyleScopedClasses['items-center']} */ ;
|
|
374
|
+
/** @type {__VLS_StyleScopedClasses['h-8']} */ ;
|
|
375
|
+
/** @type {__VLS_StyleScopedClasses['gap-1.5']} */ ;
|
|
376
|
+
/** @type {__VLS_StyleScopedClasses['px-2.5']} */ ;
|
|
377
|
+
/** @type {__VLS_StyleScopedClasses['py-1']} */ ;
|
|
378
|
+
/** @type {__VLS_StyleScopedClasses['bg-[#e8f0fe]']} */ ;
|
|
379
|
+
/** @type {__VLS_StyleScopedClasses['rounded-lg']} */ ;
|
|
380
|
+
/** @type {__VLS_StyleScopedClasses['cursor-pointer']} */ ;
|
|
381
|
+
/** @type {__VLS_StyleScopedClasses['transition-all']} */ ;
|
|
382
|
+
/** @type {__VLS_StyleScopedClasses['duration-200']} */ ;
|
|
383
|
+
/** @type {__VLS_StyleScopedClasses['border-chat-primary']} */ ;
|
|
384
|
+
/** @type {__VLS_StyleScopedClasses['text-sm']} */ ;
|
|
385
|
+
/** @type {__VLS_StyleScopedClasses['text-chat-primary-dark']} */ ;
|
|
386
|
+
/** @type {__VLS_StyleScopedClasses['w-4']} */ ;
|
|
387
|
+
/** @type {__VLS_StyleScopedClasses['h-4']} */ ;
|
|
388
|
+
/** @type {__VLS_StyleScopedClasses['leading-xs']} */ ;
|
|
389
|
+
/** @type {__VLS_StyleScopedClasses['font-semibold']} */ ;
|
|
390
|
+
/** @type {__VLS_StyleScopedClasses['w-6']} */ ;
|
|
391
|
+
/** @type {__VLS_StyleScopedClasses['h-6']} */ ;
|
|
392
|
+
/** @type {__VLS_StyleScopedClasses['bg-white']} */ ;
|
|
326
393
|
/** @type {__VLS_StyleScopedClasses['flex-center']} */ ;
|
|
394
|
+
/** @type {__VLS_StyleScopedClasses['rounded-full']} */ ;
|
|
327
395
|
/** @type {__VLS_StyleScopedClasses['w-4']} */ ;
|
|
328
|
-
/** @type {__VLS_StyleScopedClasses['
|
|
329
|
-
/** @type {__VLS_StyleScopedClasses['text-base']} */ ;
|
|
330
|
-
/** @type {__VLS_StyleScopedClasses['font-medium']} */ ;
|
|
331
|
-
/** @type {__VLS_StyleScopedClasses['p-2']} */ ;
|
|
332
|
-
/** @type {__VLS_StyleScopedClasses['hover:bg-chat-haze-200']} */ ;
|
|
333
|
-
/** @type {__VLS_StyleScopedClasses['duration-200']} */ ;
|
|
334
|
-
/** @type {__VLS_StyleScopedClasses['cursor-pointer']} */ ;
|
|
335
|
-
/** @type {__VLS_StyleScopedClasses['rounded-lg']} */ ;
|
|
396
|
+
/** @type {__VLS_StyleScopedClasses['h-4']} */ ;
|
|
336
397
|
const __VLS_export = (await import('vue')).defineComponent({
|
|
337
398
|
__typeEmits: {},
|
|
338
399
|
__typeProps: {},
|
|
@@ -181,20 +181,22 @@ __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
|
181
181
|
// @ts-ignore
|
|
182
182
|
[scrollEvent,];
|
|
183
183
|
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
184
|
-
...{ class: "loader-line" },
|
|
184
|
+
...{ class: "loader-line top" },
|
|
185
185
|
});
|
|
186
186
|
__VLS_asFunctionalDirective(__VLS_directives.vShow)(null, { ...__VLS_directiveBindingRestFields, value: (__VLS_ctx.loadingTop && __VLS_ctx.top) }, null, null);
|
|
187
187
|
// @ts-ignore
|
|
188
188
|
[loadingTop, top,];
|
|
189
189
|
var __VLS_0 = {};
|
|
190
190
|
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
191
|
-
...{ class: "loader-line" },
|
|
191
|
+
...{ class: "loader-line bottom" },
|
|
192
192
|
});
|
|
193
193
|
__VLS_asFunctionalDirective(__VLS_directives.vShow)(null, { ...__VLS_directiveBindingRestFields, value: (__VLS_ctx.loading && __VLS_ctx.bottom) }, null, null);
|
|
194
194
|
// @ts-ignore
|
|
195
195
|
[loading, bottom,];
|
|
196
196
|
/** @type {__VLS_StyleScopedClasses['loader-line']} */ ;
|
|
197
|
+
/** @type {__VLS_StyleScopedClasses['top']} */ ;
|
|
197
198
|
/** @type {__VLS_StyleScopedClasses['loader-line']} */ ;
|
|
199
|
+
/** @type {__VLS_StyleScopedClasses['bottom']} */ ;
|
|
198
200
|
// @ts-ignore
|
|
199
201
|
var __VLS_1 = __VLS_0;
|
|
200
202
|
const __VLS_base = (await import('vue')).defineComponent({
|
|
@@ -3,6 +3,7 @@ type ShortPopoverContentProps = Pick<PopoverContentProps, 'side' | 'align' | 'si
|
|
|
3
3
|
delay?: number;
|
|
4
4
|
trigger?: 'hover' | 'click';
|
|
5
5
|
triggerClass?: string;
|
|
6
|
+
contentClass?: string;
|
|
6
7
|
disabled?: boolean;
|
|
7
8
|
};
|
|
8
9
|
type __VLS_Props = ShortPopoverContentProps;
|
|
@@ -26,6 +27,7 @@ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<__VLS_Publ
|
|
|
26
27
|
delay: number;
|
|
27
28
|
trigger: "click" | "hover";
|
|
28
29
|
triggerClass: string;
|
|
30
|
+
contentClass: string;
|
|
29
31
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, __VLS_Slots>;
|
|
30
32
|
export default _default;
|
|
31
33
|
type __VLS_WithSlots<T, S> = T & {
|
|
@@ -6,6 +6,7 @@ const props = withDefaults(defineProps(), {
|
|
|
6
6
|
delay: 100,
|
|
7
7
|
trigger: 'click',
|
|
8
8
|
triggerClass: '',
|
|
9
|
+
contentClass: '',
|
|
9
10
|
});
|
|
10
11
|
let closeTimer = null;
|
|
11
12
|
const isOpen = defineModel('open');
|
|
@@ -46,6 +47,7 @@ const __VLS_defaults = {
|
|
|
46
47
|
delay: 100,
|
|
47
48
|
trigger: 'click',
|
|
48
49
|
triggerClass: '',
|
|
50
|
+
contentClass: '',
|
|
49
51
|
};
|
|
50
52
|
const __VLS_ctx = {
|
|
51
53
|
...{},
|
|
@@ -117,12 +119,14 @@ if (!__VLS_ctx.disabled) {
|
|
|
117
119
|
...{ 'onMouseleave': {} },
|
|
118
120
|
side: (__VLS_ctx.side),
|
|
119
121
|
align: (__VLS_ctx.align),
|
|
122
|
+
...{ class: (__VLS_ctx.contentClass) },
|
|
120
123
|
}));
|
|
121
124
|
const __VLS_22 = __VLS_21({
|
|
122
125
|
...{ 'onMouseenter': {} },
|
|
123
126
|
...{ 'onMouseleave': {} },
|
|
124
127
|
side: (__VLS_ctx.side),
|
|
125
128
|
align: (__VLS_ctx.align),
|
|
129
|
+
...{ class: (__VLS_ctx.contentClass) },
|
|
126
130
|
}, ...__VLS_functionalComponentArgsRest(__VLS_21));
|
|
127
131
|
let __VLS_24;
|
|
128
132
|
let __VLS_25;
|
|
@@ -132,7 +136,7 @@ if (!__VLS_ctx.disabled) {
|
|
|
132
136
|
{ onMouseleave: (__VLS_ctx.onMouseLeave) });
|
|
133
137
|
const { default: __VLS_28 } = __VLS_23.slots;
|
|
134
138
|
// @ts-ignore
|
|
135
|
-
[onMouseEnter, onMouseLeave, side, align,];
|
|
139
|
+
[onMouseEnter, onMouseLeave, side, align, contentClass,];
|
|
136
140
|
var __VLS_29 = {};
|
|
137
141
|
var __VLS_23;
|
|
138
142
|
}
|
|
@@ -21,11 +21,11 @@ DropdownMenuSeparator;
|
|
|
21
21
|
// @ts-ignore
|
|
22
22
|
const __VLS_1 = __VLS_asFunctionalComponent(__VLS_0, new __VLS_0({
|
|
23
23
|
...(__VLS_ctx.delegatedProps),
|
|
24
|
-
...{ class: (__VLS_ctx.cn('-mx-1 my-1 h-px bg-
|
|
24
|
+
...{ class: (__VLS_ctx.cn('-mx-1 my-1 h-px bg-chat-haze-300', props.class)) },
|
|
25
25
|
}));
|
|
26
26
|
const __VLS_2 = __VLS_1({
|
|
27
27
|
...(__VLS_ctx.delegatedProps),
|
|
28
|
-
...{ class: (__VLS_ctx.cn('-mx-1 my-1 h-px bg-
|
|
28
|
+
...{ class: (__VLS_ctx.cn('-mx-1 my-1 h-px bg-chat-haze-300', props.class)) },
|
|
29
29
|
}, ...__VLS_functionalComponentArgsRest(__VLS_1));
|
|
30
30
|
var __VLS_4 = {};
|
|
31
31
|
// @ts-ignore
|
|
@@ -30,6 +30,9 @@ const __VLS_1 = __VLS_asFunctionalComponent(__VLS_0, new __VLS_0({}));
|
|
|
30
30
|
const __VLS_2 = __VLS_1({}, ...__VLS_functionalComponentArgsRest(__VLS_1));
|
|
31
31
|
var __VLS_4 = {};
|
|
32
32
|
const { default: __VLS_5 } = __VLS_3.slots;
|
|
33
|
+
__VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
|
|
34
|
+
...{ class: "go-chat-app" },
|
|
35
|
+
});
|
|
33
36
|
const __VLS_6 = {}.PopoverContent;
|
|
34
37
|
/** @type {[typeof __VLS_components.PopoverContent, typeof __VLS_components.PopoverContent, ]} */ ;
|
|
35
38
|
// @ts-ignore
|
|
@@ -37,11 +40,11 @@ PopoverContent;
|
|
|
37
40
|
// @ts-ignore
|
|
38
41
|
const __VLS_7 = __VLS_asFunctionalComponent(__VLS_6, new __VLS_6({
|
|
39
42
|
...({ ...__VLS_ctx.forwarded, ...__VLS_ctx.$attrs }),
|
|
40
|
-
...{ class: (__VLS_ctx.cn('z-[2000] min-w-72 w-max rounded-md bg-white outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', props.class)) },
|
|
43
|
+
...{ class: (__VLS_ctx.cn('z-[2000] shadow-3xl min-w-72 w-max rounded-md bg-white outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', props.class)) },
|
|
41
44
|
}));
|
|
42
45
|
const __VLS_8 = __VLS_7({
|
|
43
46
|
...({ ...__VLS_ctx.forwarded, ...__VLS_ctx.$attrs }),
|
|
44
|
-
...{ class: (__VLS_ctx.cn('z-[2000] min-w-72 w-max rounded-md bg-white outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', props.class)) },
|
|
47
|
+
...{ class: (__VLS_ctx.cn('z-[2000] shadow-3xl min-w-72 w-max rounded-md bg-white outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2', props.class)) },
|
|
45
48
|
}, ...__VLS_functionalComponentArgsRest(__VLS_7));
|
|
46
49
|
const { default: __VLS_10 } = __VLS_9.slots;
|
|
47
50
|
// @ts-ignore
|
|
@@ -49,6 +52,7 @@ const { default: __VLS_10 } = __VLS_9.slots;
|
|
|
49
52
|
var __VLS_11 = {};
|
|
50
53
|
var __VLS_9;
|
|
51
54
|
var __VLS_3;
|
|
55
|
+
/** @type {__VLS_StyleScopedClasses['go-chat-app']} */ ;
|
|
52
56
|
// @ts-ignore
|
|
53
57
|
var __VLS_12 = __VLS_11;
|
|
54
58
|
const __VLS_base = (await import('vue')).defineComponent({
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
export declare const DATE_FORMATS: {
|
|
2
2
|
readonly DATE_FORMAT: "YYYY-MM-DD";
|
|
3
3
|
readonly DATE_FORMAT_FULL: "YYYY-MM-DD HH:mm:ss";
|
|
4
|
+
readonly DATE_FORMAT_MEDIUM: "MMM D, YYYY";
|
|
4
5
|
readonly TIME_12_FORMAT: "hh:mm A";
|
|
5
6
|
};
|
|
6
7
|
export declare const TIME_ZONE_UTC = "Africa/Freetown";
|