@phonghq/go-chat 1.0.74 → 1.0.76

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.
@@ -14,6 +14,9 @@ type __VLS_ModelProps = {
14
14
  type __VLS_PublicProps = __VLS_Props & __VLS_ModelProps;
15
15
  declare const _default: import("vue").DefineComponent<__VLS_PublicProps, {
16
16
  clearInput: () => void;
17
+ handleSendMessage: (type: "message" | "file", option?: {
18
+ message?: string | undefined;
19
+ } | undefined) => Promise<void>;
17
20
  }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
18
21
  "update:modelValue": (value: string | undefined) => any;
19
22
  } & {
@@ -35,9 +35,9 @@ const removeDropFile = () => {
35
35
  dropFileLink.value = '';
36
36
  dropFile.value = null;
37
37
  };
38
- const handleSendMessage = async (type) => {
38
+ const handleSendMessage = async (type, option) => {
39
39
  const tempId = Date.now();
40
- let messageContent = '';
40
+ let messageContent = option?.message ?? keyword.value;
41
41
  let attachments = [];
42
42
  if (dropFile.value) {
43
43
  attachments = [
@@ -45,10 +45,10 @@ const handleSendMessage = async (type) => {
45
45
  ];
46
46
  }
47
47
  else if (type == 'message') {
48
- if (!keyword.value)
48
+ if (!messageContent)
49
49
  return;
50
- messageContent = keyword.value;
51
- keyword.value = '';
50
+ if (!option?.message)
51
+ keyword.value = '';
52
52
  setInputHeight(chatInputRef.value);
53
53
  }
54
54
  else if (type == 'file') {
@@ -115,7 +115,7 @@ const clearInput = () => {
115
115
  removeDropFile();
116
116
  };
117
117
  const newline = () => { };
118
- const __VLS_exposed = { clearInput };
118
+ const __VLS_exposed = { clearInput, handleSendMessage };
119
119
  defineExpose(__VLS_exposed);
120
120
  debugger; /* PartiallyEnd: #3632/scriptSetup.vue */
121
121
  const __VLS_modelEmit = defineEmits();
@@ -0,0 +1,6 @@
1
+ import { PAGE } from '../../../../constant/general';
2
+ type Props = {
3
+ goToPage: (page: PAGE) => void;
4
+ };
5
+ declare const _default: import("vue").DefineComponent<Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<Props> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
6
+ export default _default;
@@ -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,5 +1,5 @@
1
- import type { IResUser } from '../../../types/message';
2
- import type { PAGE_RESPONSIVE, PARENT_PAGE_NAME } from '../../../types/chat/global';
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;
@@ -1,50 +1,25 @@
1
1
  /// <reference types="C:/phonghq/go-chat-v2/node_modules/.vue-global-types/vue_3.5_0.d.ts" />
2
- import IconPhone from '../../../assets/icons/global/IconPhone.vue';
3
- import { PAGE } from '../../../constant/general';
4
- import Avatar from '../../../components/chat/customer/Avatar.vue';
5
- import { routerPush } from '../../../utils/chat/chat-router';
6
- import { user, userHistory } from '../../../utils/chat/store/user';
7
- import { dataProfile } from '../../../utils/chat/store/auth';
8
- import { digibotId } from '../../../composable/useDigibot';
9
- import IconArrowLeft from '../../../assets/icons/global/IconArrowLeft.vue';
10
- import { phoneNumberFormat } from '../../../utils/string-helper';
11
- import IconSms from '../../../assets/icons/global/IconSms.vue';
12
- import { activePlivoMode } from '../../../utils/chat/store/message';
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';
13
12
  import { computed, ref } from 'vue';
14
- import ButtonBase from '../../../components/common/button/ButtonBase.vue';
15
- import IconMenuDot from '../../../assets/icons/chat/IconMenuDot.vue';
16
- import DropdownBase from '../../../components/common/dropdown/DropdownBase.vue';
17
- import IconInfo from '../../../assets/icons/chat/IconInfo.vue';
18
- import IconCalendar from '../../../assets/icons/chat/IconCalendar.vue';
19
- import IconCheck from '../../../assets/icons/chat/IconCheck.vue';
20
- import IconLink from '../../../assets/icons/chat/IconLink.vue';
21
- import { getTimeLocal } from '../../../utils/dayjs-helper';
22
- import { DATE_FORMATS } from '../../../constant/datetime';
23
- import BaseSpin from '../../../components/chat/common/spin/BaseSpin.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';
24
21
  const props = withDefaults(defineProps(), {});
25
22
  const emit = defineEmits();
26
- const customerDropContent = computed(() => {
27
- return [
28
- {
29
- icon: IconInfo,
30
- title: 'Profile',
31
- click: goToViewUser,
32
- disabled: false
33
- },
34
- {
35
- icon: IconCalendar,
36
- title: 'View Appointment',
37
- click: goToViewAppointment,
38
- disabled: !userHistory.value?.appointment?.length
39
- },
40
- {
41
- icon: IconCheck,
42
- title: 'View Checkin',
43
- click: goToViewView,
44
- disabled: !userHistory.value?.visit_count
45
- }
46
- ];
47
- });
48
23
  const tabContent = computed(() => {
49
24
  let result = [];
50
25
  if (userHistory.value?.appointment?.length && props.parentPageName == 'booking-admin') {
@@ -63,18 +38,10 @@ const tabContent = computed(() => {
63
38
  });
64
39
  const activePlivoSms = ref(dataProfile.value?.is_sms_active == 1);
65
40
  const loading = ref(false);
66
- const selectOpen = ref(false);
67
41
  const goToViewUser = () => {
68
42
  goToPage(PAGE.CUSTOMER_DETAIL);
69
43
  };
70
- const goToViewAppointment = () => {
71
- goToPage(PAGE.CUSTOMER_APPOINTMENT);
72
- };
73
- const goToViewView = () => {
74
- goToPage(PAGE.CUSTOMER_CHECK_IN);
75
- };
76
44
  const goToPage = (page) => {
77
- selectOpen.value = false;
78
45
  if (props.data?.id.toString() == digibotId.toString())
79
46
  return;
80
47
  if (dataProfile.value?.user_type == 'tenant') {
@@ -82,17 +49,6 @@ const goToPage = (page) => {
82
49
  routerPush(page);
83
50
  }
84
51
  };
85
- const customer_select_option = [
86
- { label: 'Profile', value: 0 },
87
- { label: 'Later Appointment', value: 1 }
88
- ];
89
- const handleSelectChange = (value) => {
90
- if (value == 0) {
91
- goToViewUser();
92
- }
93
- else {
94
- }
95
- };
96
52
  const handleActivePlivoSmsChange = async (is_active) => {
97
53
  return;
98
54
  try {
@@ -183,7 +139,7 @@ __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
183
139
  });
184
140
  __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
185
141
  ...{ onClick: (__VLS_ctx.goToViewUser) },
186
- ...{ class: "grow overflow-hidden" },
142
+ ...{ class: "grow overflow-hidden " },
187
143
  ...{ class: ({ 'cursor-pointer': __VLS_ctx.dataProfile?.user_type == 'tenant' }) },
188
144
  });
189
145
  // @ts-ignore
@@ -274,87 +230,36 @@ if (__VLS_ctx.data?.id &&
274
230
  __VLS_ctx.dataProfile?.user_type == 'tenant') {
275
231
  // @ts-ignore
276
232
  [dataProfile, data, data, digibotId,];
277
- /** @type {[typeof DropdownBase, typeof DropdownBase, ]} */ ;
233
+ /** @type {[typeof DropdownInfo, ]} */ ;
278
234
  // @ts-ignore
279
- const __VLS_26 = __VLS_asFunctionalComponent(DropdownBase, new DropdownBase({
280
- side: "bottom",
281
- align: "end",
282
- open: (__VLS_ctx.selectOpen),
235
+ const __VLS_26 = __VLS_asFunctionalComponent(DropdownInfo, new DropdownInfo({
236
+ goToPage: (__VLS_ctx.goToPage),
283
237
  }));
284
238
  const __VLS_27 = __VLS_26({
285
- side: "bottom",
286
- align: "end",
287
- open: (__VLS_ctx.selectOpen),
239
+ goToPage: (__VLS_ctx.goToPage),
288
240
  }, ...__VLS_functionalComponentArgsRest(__VLS_26));
289
- const { default: __VLS_29 } = __VLS_28.slots;
290
241
  // @ts-ignore
291
- [selectOpen,];
292
- {
293
- const { default: __VLS_30 } = __VLS_28.slots;
294
- __VLS_asFunctionalElement(__VLS_elements.button, __VLS_elements.button)({
295
- ...{ class: "shrink-0 flex-center w-4" },
296
- });
297
- /** @type {[typeof IconMenuDot, ]} */ ;
298
- // @ts-ignore
299
- const __VLS_31 = __VLS_asFunctionalComponent(IconMenuDot, new IconMenuDot({
300
- ...{ class: "scale-[1.2]" },
301
- }));
302
- const __VLS_32 = __VLS_31({
303
- ...{ class: "scale-[1.2]" },
304
- }, ...__VLS_functionalComponentArgsRest(__VLS_31));
305
- }
306
- {
307
- const { content: __VLS_35 } = __VLS_28.slots;
308
- __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
309
- ...{ class: "text-chat-text" },
310
- });
311
- for (const [item, i] of __VLS_getVForSourceType((__VLS_ctx.customerDropContent))) {
312
- // @ts-ignore
313
- [customerDropContent,];
314
- __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
315
- ...{ onClick: (...[$event]) => {
316
- if (!(__VLS_ctx.data?.id &&
317
- __VLS_ctx.data?.id.toString() != __VLS_ctx.digibotId.toString() &&
318
- __VLS_ctx.dataProfile?.user_type == 'tenant'))
319
- return;
320
- item.click?.();
321
- } },
322
- ...{ class: "flex items-center gap-2 p-2 hover:bg-chat-haze-200 duration-200 cursor-pointer rounded-lg" },
323
- key: (i),
324
- ...{ class: ({ 'opacity-[0.3] pointer-events-none': item.disabled }) },
325
- });
326
- const __VLS_36 = ((item.icon));
327
- // @ts-ignore
328
- const __VLS_37 = __VLS_asFunctionalComponent(__VLS_36, new __VLS_36({
329
- ...{ class: "w-5 h-5" },
330
- }));
331
- const __VLS_38 = __VLS_37({
332
- ...{ class: "w-5 h-5" },
333
- }, ...__VLS_functionalComponentArgsRest(__VLS_37));
334
- (item.title);
335
- }
336
- }
337
- var __VLS_28;
242
+ [goToPage,];
338
243
  }
339
244
  if (__VLS_ctx.parentPageName) {
340
245
  // @ts-ignore
341
246
  [parentPageName,];
342
247
  __VLS_asFunctionalElement(__VLS_elements.div, __VLS_elements.div)({
343
- ...{ class: " flex items-center border-chat-gray-5 loading-container h-12" },
248
+ ...{ class: "flex items-center border-chat-gray-5 loading-container h-12" },
344
249
  ...{ class: ({ 'show p-4 border-t': __VLS_ctx.customerLoading || __VLS_ctx.tabContent.length }) },
345
250
  });
346
251
  // @ts-ignore
347
252
  [customerLoading, tabContent,];
348
253
  /** @type {[typeof BaseSpin, ]} */ ;
349
254
  // @ts-ignore
350
- const __VLS_41 = __VLS_asFunctionalComponent(BaseSpin, new BaseSpin({
255
+ const __VLS_30 = __VLS_asFunctionalComponent(BaseSpin, new BaseSpin({
351
256
  size: (16),
352
257
  border: (1),
353
258
  }));
354
- const __VLS_42 = __VLS_41({
259
+ const __VLS_31 = __VLS_30({
355
260
  size: (16),
356
261
  border: (1),
357
- }, ...__VLS_functionalComponentArgsRest(__VLS_41));
262
+ }, ...__VLS_functionalComponentArgsRest(__VLS_30));
358
263
  __VLS_asFunctionalDirective(__VLS_directives.vShow)(null, { ...__VLS_directiveBindingRestFields, value: (__VLS_ctx.customerLoading) }, null, null);
359
264
  // @ts-ignore
360
265
  [customerLoading,];
@@ -370,16 +275,16 @@ if (__VLS_ctx.parentPageName) {
370
275
  key: (i),
371
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" },
372
277
  });
373
- const __VLS_45 = ((tab.icon));
278
+ const __VLS_34 = ((tab.icon));
374
279
  // @ts-ignore
375
- const __VLS_46 = __VLS_asFunctionalComponent(__VLS_45, new __VLS_45({
280
+ const __VLS_35 = __VLS_asFunctionalComponent(__VLS_34, new __VLS_34({
376
281
  ...{ class: "w-4 h-4" },
377
282
  weight: "2.5",
378
283
  }));
379
- const __VLS_47 = __VLS_46({
284
+ const __VLS_36 = __VLS_35({
380
285
  ...{ class: "w-4 h-4" },
381
286
  weight: "2.5",
382
- }, ...__VLS_functionalComponentArgsRest(__VLS_46));
287
+ }, ...__VLS_functionalComponentArgsRest(__VLS_35));
383
288
  __VLS_asFunctionalElement(__VLS_elements.span, __VLS_elements.span)({
384
289
  ...{ class: "leading-xs" },
385
290
  });
@@ -393,14 +298,14 @@ if (__VLS_ctx.parentPageName) {
393
298
  });
394
299
  /** @type {[typeof IconLink, ]} */ ;
395
300
  // @ts-ignore
396
- const __VLS_50 = __VLS_asFunctionalComponent(IconLink, new IconLink({
301
+ const __VLS_39 = __VLS_asFunctionalComponent(IconLink, new IconLink({
397
302
  ...{ class: "w-4 h-4" },
398
303
  weight: "2.5",
399
304
  }));
400
- const __VLS_51 = __VLS_50({
305
+ const __VLS_40 = __VLS_39({
401
306
  ...{ class: "w-4 h-4" },
402
307
  weight: "2.5",
403
- }, ...__VLS_functionalComponentArgsRest(__VLS_50));
308
+ }, ...__VLS_functionalComponentArgsRest(__VLS_39));
404
309
  }
405
310
  }
406
311
  /** @type {__VLS_StyleScopedClasses['w-full']} */ ;
@@ -456,23 +361,6 @@ if (__VLS_ctx.parentPageName) {
456
361
  /** @type {__VLS_StyleScopedClasses['w-9']} */ ;
457
362
  /** @type {__VLS_StyleScopedClasses['h-9']} */ ;
458
363
  /** @type {__VLS_StyleScopedClasses['rounded-lg']} */ ;
459
- /** @type {__VLS_StyleScopedClasses['shrink-0']} */ ;
460
- /** @type {__VLS_StyleScopedClasses['flex-center']} */ ;
461
- /** @type {__VLS_StyleScopedClasses['w-4']} */ ;
462
- /** @type {__VLS_StyleScopedClasses['scale-[1.2]']} */ ;
463
- /** @type {__VLS_StyleScopedClasses['text-chat-text']} */ ;
464
- /** @type {__VLS_StyleScopedClasses['flex']} */ ;
465
- /** @type {__VLS_StyleScopedClasses['items-center']} */ ;
466
- /** @type {__VLS_StyleScopedClasses['gap-2']} */ ;
467
- /** @type {__VLS_StyleScopedClasses['p-2']} */ ;
468
- /** @type {__VLS_StyleScopedClasses['hover:bg-chat-haze-200']} */ ;
469
- /** @type {__VLS_StyleScopedClasses['duration-200']} */ ;
470
- /** @type {__VLS_StyleScopedClasses['cursor-pointer']} */ ;
471
- /** @type {__VLS_StyleScopedClasses['rounded-lg']} */ ;
472
- /** @type {__VLS_StyleScopedClasses['opacity-[0.3]']} */ ;
473
- /** @type {__VLS_StyleScopedClasses['pointer-events-none']} */ ;
474
- /** @type {__VLS_StyleScopedClasses['w-5']} */ ;
475
- /** @type {__VLS_StyleScopedClasses['h-5']} */ ;
476
364
  /** @type {__VLS_StyleScopedClasses['flex']} */ ;
477
365
  /** @type {__VLS_StyleScopedClasses['items-center']} */ ;
478
366
  /** @type {__VLS_StyleScopedClasses['border-chat-gray-5']} */ ;
@@ -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
  }
@@ -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({