@mobilon-dev/chotto 0.3.23 → 0.3.25
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/README.md +111 -22
- package/dist/{CreateChat-CdkAwYO5.js → CreateChat-CNWNXaD9.js} +1 -1
- package/dist/{CreateChat2-sDETTpTU.js → CreateChat2-J1zCJAH1.js} +1 -1
- package/dist/{CreateDialog-Bw8bOym2.js → CreateDialog-D_VjGFWg.js} +1 -1
- package/dist/{ModalVideoRecorder-BP9FfPE8.js → ModalVideoRecorder-BumRO5hZ.js} +1 -1
- package/dist/{SelectUser2-BAKccRXs.js → SelectUser2-DsxsLuNu.js} +1 -1
- package/dist/chotto.css +1 -1
- package/dist/{index-4foc416D.js → index-D8kOhf51.js} +2322 -2025
- package/dist/themes/dark.css +1 -1
- package/dist/themes/default.css +1 -1
- package/dist/themes/green.css +1 -1
- package/dist/themes/mobilon1.css +1 -1
- package/dist/types/apps/stories/BasicChatExample.stories.d.ts +5 -0
- package/dist/types/components/2_blocks/CommunicationPanel/CommunicationPanel.vue.d.ts +2 -2
- package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationActions.d.ts +56 -0
- package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationAttributes.d.ts +49 -0
- package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationChannels.d.ts +42 -0
- package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationDialogSync.d.ts +26 -0
- package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationMenu.d.ts +32 -0
- package/dist/types/components/2_blocks/CommunicationPanel/composables/useCommunicationSubMenu.d.ts +25 -0
- package/dist/types/components/2_blocks/CommunicationPanel/stories/CommunicationPanel.stories.d.ts +2 -2
- package/dist/types/components/2_feed_elements/AudioMessage/AudioMessage.vue.d.ts +9 -0
- package/dist/types/components/2_feed_elements/FileMessage/FileMessage.vue.d.ts +9 -0
- package/dist/types/components/2_feed_elements/ImageMessage/ImageMessage.vue.d.ts +9 -0
- package/dist/types/components/2_feed_elements/MessageReactions/MessageReactions.vue.d.ts +9 -0
- package/dist/types/components/2_feed_elements/MessageReactions/stories/MessageReactions.stories.d.ts +15 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue.d.ts +65 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/stories/MessageStatusIndicator.stories.d.ts +12 -0
- package/dist/types/components/2_feed_elements/StickerMessage/StickerMessage.vue.d.ts +9 -0
- package/dist/types/components/2_feed_elements/TextMessage/TextMessage.vue.d.ts +9 -0
- package/dist/types/components/2_feed_elements/TextMessage/stories/TextMessage.stories.d.ts +5 -39
- package/dist/types/components/2_feed_elements/VideoMessage/VideoMessage.vue.d.ts +9 -0
- package/dist/types/components/3_compounds/ChatList/ChatList.vue.d.ts +1 -5
- package/dist/types/components/3_compounds/ChatList/ChatListHeader.vue.d.ts +16 -0
- package/dist/types/components/3_compounds/ChatList/composables/index.d.ts +4 -0
- package/dist/types/components/3_compounds/ChatList/composables/useChatListActions.d.ts +29 -0
- package/dist/types/components/3_compounds/ChatList/composables/useChatListFilter.d.ts +58 -0
- package/dist/types/components/3_compounds/ChatList/composables/useChatListScroll.d.ts +34 -0
- package/dist/types/components/3_compounds/ChatList/composables/useChatListSelection.d.ts +56 -0
- package/dist/types/components/3_compounds/Feed/Feed.vue.d.ts +9 -0
- package/dist/types/components/3_compounds/Feed/stories/Feed.stories.d.ts +0 -1
- package/dist/types/components/index.d.ts +2 -0
- package/dist/vuessages.es.js +97 -95
- package/dist/vuessages.umd.js +12 -12
- package/package.json +1 -1
|
@@ -5,10 +5,8 @@ type __VLS_WithSlots<T, S> = T & (new () => {
|
|
|
5
5
|
});
|
|
6
6
|
declare const __VLS_component: import("vue").DefineComponent<{}, {
|
|
7
7
|
$emit: (event: "search" | "select" | "action" | "expand" | "tab-click" | "loadMoreChats" | "clear-search", ...args: any[]) => void;
|
|
8
|
-
title: string;
|
|
9
8
|
chats: unknown[];
|
|
10
9
|
searchQuery: string;
|
|
11
|
-
titleEnabled: boolean;
|
|
12
10
|
filterEnabled: boolean;
|
|
13
11
|
filterQuery: string;
|
|
14
12
|
dialogTabs: unknown[];
|
|
@@ -17,10 +15,8 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
|
|
|
17
15
|
searchProgress: string;
|
|
18
16
|
searchStats: Record<string, any>;
|
|
19
17
|
$props: {
|
|
20
|
-
readonly title?: string | undefined;
|
|
21
18
|
readonly chats?: unknown[] | undefined;
|
|
22
19
|
readonly searchQuery?: string | undefined;
|
|
23
|
-
readonly titleEnabled?: boolean | undefined;
|
|
24
20
|
readonly filterEnabled?: boolean | undefined;
|
|
25
21
|
readonly filterQuery?: string | undefined;
|
|
26
22
|
readonly dialogTabs?: unknown[] | undefined;
|
|
@@ -31,7 +27,7 @@ declare const __VLS_component: import("vue").DefineComponent<{}, {
|
|
|
31
27
|
};
|
|
32
28
|
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
33
29
|
type __VLS_Slots = {
|
|
34
|
-
|
|
30
|
+
header?: ((props: {}) => any) | undefined;
|
|
35
31
|
} & {
|
|
36
32
|
sidebar?: ((props: {}) => any) | undefined;
|
|
37
33
|
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
|
|
2
|
+
export default _default;
|
|
3
|
+
type __VLS_WithSlots<T, S> = T & (new () => {
|
|
4
|
+
$slots: S;
|
|
5
|
+
});
|
|
6
|
+
declare const __VLS_component: import("vue").DefineComponent<{}, {
|
|
7
|
+
title: string;
|
|
8
|
+
titleEnabled: boolean;
|
|
9
|
+
$props: {
|
|
10
|
+
readonly title?: string | undefined;
|
|
11
|
+
readonly titleEnabled?: boolean | undefined;
|
|
12
|
+
};
|
|
13
|
+
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
14
|
+
type __VLS_Slots = {
|
|
15
|
+
actions?: ((props: {}) => any) | undefined;
|
|
16
|
+
};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Композабл для обработки действий в списке чатов.
|
|
3
|
+
* Инкапсулирует логику эмита событий для расширения чата,
|
|
4
|
+
* выполнения действий и обработки кликов по табам.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Тип эмиттера событий для действий списка чатов.
|
|
8
|
+
*/
|
|
9
|
+
type ChatListActionsEmit = {
|
|
10
|
+
/** Событие расширения чата */
|
|
11
|
+
(event: 'expand', args: unknown): void;
|
|
12
|
+
/** Событие выполнения действия */
|
|
13
|
+
(event: 'action', data: unknown): void;
|
|
14
|
+
/** Событие клика по табу */
|
|
15
|
+
(event: 'tab-click', tabId: string): void;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Параметры и зависимости композабла.
|
|
19
|
+
*/
|
|
20
|
+
interface UseChatListActionsOptions {
|
|
21
|
+
/** Функция эмита событий */
|
|
22
|
+
emit: ChatListActionsEmit;
|
|
23
|
+
}
|
|
24
|
+
export declare function useChatListActions({ emit }: UseChatListActionsOptions): {
|
|
25
|
+
expandChat: (args: unknown) => void;
|
|
26
|
+
action: (data: unknown) => void;
|
|
27
|
+
handleTabClick: (tabId: string) => void;
|
|
28
|
+
};
|
|
29
|
+
export {};
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Композабл для фильтрации и сортировки списка чатов.
|
|
3
|
+
* Инкапсулирует логику сортировки по времени активности и количеству
|
|
4
|
+
* непрочитанных сообщений, фильтрации по табам, тегам и текстовому поиску.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Тип элемента чата.
|
|
8
|
+
*/
|
|
9
|
+
type ChatItem = {
|
|
10
|
+
chatId: string;
|
|
11
|
+
name: string;
|
|
12
|
+
metadata: string;
|
|
13
|
+
countUnread: number;
|
|
14
|
+
'lastActivity.timestamp'?: string | number;
|
|
15
|
+
contact?: {
|
|
16
|
+
tags?: Array<{
|
|
17
|
+
tagId: string;
|
|
18
|
+
}>;
|
|
19
|
+
};
|
|
20
|
+
[key: string]: unknown;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* Параметры компонента для фильтрации.
|
|
24
|
+
*/
|
|
25
|
+
type ChatListFilterProps = {
|
|
26
|
+
chats: ChatItem[];
|
|
27
|
+
filterEnabled: boolean;
|
|
28
|
+
filterQuery?: string | null;
|
|
29
|
+
dialogTabs?: unknown[];
|
|
30
|
+
activeTabId?: string;
|
|
31
|
+
searchQuery?: string;
|
|
32
|
+
isSearching?: boolean;
|
|
33
|
+
searchProgress?: string;
|
|
34
|
+
searchStats?: {
|
|
35
|
+
loaded: number;
|
|
36
|
+
total: number | string;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Тип эмиттера событий для фильтрации.
|
|
41
|
+
*/
|
|
42
|
+
type ChatListFilterEmit = {
|
|
43
|
+
(event: 'search', value: string): void;
|
|
44
|
+
(event: 'clear-search'): void;
|
|
45
|
+
};
|
|
46
|
+
/**
|
|
47
|
+
* Параметры и зависимости композабла.
|
|
48
|
+
*/
|
|
49
|
+
interface UseChatListFilterOptions {
|
|
50
|
+
props: ChatListFilterProps;
|
|
51
|
+
emit: ChatListFilterEmit;
|
|
52
|
+
}
|
|
53
|
+
export declare function useChatListFilter({ props, emit }: UseChatListFilterOptions): {
|
|
54
|
+
filter: import("vue").Ref<string, string>;
|
|
55
|
+
getSortedAndFilteredChats: () => ChatItem[];
|
|
56
|
+
getFilter: (value: string) => void;
|
|
57
|
+
};
|
|
58
|
+
export {};
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { type Ref, type ComputedRef } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Композабл для управления скроллом списка чатов.
|
|
4
|
+
* Инкапсулирует логику прокрутки вверх, отслеживания позиции скролла,
|
|
5
|
+
* определения необходимости загрузки дополнительных чатов и отображения
|
|
6
|
+
* кнопки прокрутки вверх.
|
|
7
|
+
*/
|
|
8
|
+
/**
|
|
9
|
+
* Тип эмиттера событий для скролла.
|
|
10
|
+
*/
|
|
11
|
+
type ChatListScrollEmit = {
|
|
12
|
+
/** Событие запроса загрузки дополнительных чатов */
|
|
13
|
+
(event: 'loadMoreChats'): void;
|
|
14
|
+
};
|
|
15
|
+
/**
|
|
16
|
+
* Параметры и зависимости композабла.
|
|
17
|
+
*/
|
|
18
|
+
interface UseChatListScrollOptions {
|
|
19
|
+
/** Ссылка на DOM-элемент контейнера списка чатов */
|
|
20
|
+
refChatList: Ref<HTMLElement | undefined>;
|
|
21
|
+
/** Реактивный список чатов (для определения момента обновления) */
|
|
22
|
+
chats: ComputedRef<unknown[]> | Ref<unknown[]>;
|
|
23
|
+
/** Функция эмита событий */
|
|
24
|
+
emit: ChatListScrollEmit;
|
|
25
|
+
}
|
|
26
|
+
export declare function useChatListScroll({ refChatList, chats, emit }: UseChatListScrollOptions): {
|
|
27
|
+
allowLoadMore: Ref<boolean, boolean>;
|
|
28
|
+
isShowButton: Ref<boolean, boolean>;
|
|
29
|
+
scrollToTopForce: () => void;
|
|
30
|
+
scrollCheck: () => void;
|
|
31
|
+
startScrollWatch: (event: MouseEvent) => void;
|
|
32
|
+
stopScrollWatch: () => void;
|
|
33
|
+
};
|
|
34
|
+
export {};
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { type ComputedRef, type Ref } from 'vue';
|
|
2
|
+
/**
|
|
3
|
+
* Композабл для управления выбором чатов и диалогов в списке.
|
|
4
|
+
* Инкапсулирует логику установки состояния выбранного чата/диалога,
|
|
5
|
+
* сброса предыдущих выборов и эмита событий выбора.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Тип элемента чата.
|
|
9
|
+
*/
|
|
10
|
+
type ChatItem = {
|
|
11
|
+
chatId: string;
|
|
12
|
+
isSelected?: boolean;
|
|
13
|
+
dialogs?: Array<{
|
|
14
|
+
dialogId: string;
|
|
15
|
+
isSelected?: boolean;
|
|
16
|
+
}>;
|
|
17
|
+
[key: string]: unknown;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Тип элемента диалога.
|
|
21
|
+
*/
|
|
22
|
+
type Dialog = {
|
|
23
|
+
dialogId: string;
|
|
24
|
+
[key: string]: unknown;
|
|
25
|
+
};
|
|
26
|
+
/**
|
|
27
|
+
* Аргументы для выбора чата.
|
|
28
|
+
*/
|
|
29
|
+
type SelectChatArgs = {
|
|
30
|
+
/** Выбранный чат */
|
|
31
|
+
chat: ChatItem;
|
|
32
|
+
/** Опциональный выбранный диалог */
|
|
33
|
+
dialog?: Dialog;
|
|
34
|
+
[key: string]: unknown;
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* Тип эмиттера событий для выбора.
|
|
38
|
+
*/
|
|
39
|
+
type ChatListSelectionEmit = {
|
|
40
|
+
/** Событие выбора чата/диалога */
|
|
41
|
+
(event: 'select', args: SelectChatArgs): void;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Параметры и зависимости композабла.
|
|
45
|
+
*/
|
|
46
|
+
interface UseChatListSelectionOptions {
|
|
47
|
+
/** Реактивный список чатов */
|
|
48
|
+
chats: ComputedRef<ChatItem[]> | Ref<ChatItem[]>;
|
|
49
|
+
/** Функция эмита событий */
|
|
50
|
+
emit: ChatListSelectionEmit;
|
|
51
|
+
}
|
|
52
|
+
export declare function useChatListSelection({ chats, emit }: UseChatListSelectionOptions): {
|
|
53
|
+
selectChat: (args: SelectChatArgs) => void;
|
|
54
|
+
selectDialog: (dialog: Dialog) => void;
|
|
55
|
+
};
|
|
56
|
+
export {};
|
|
@@ -69,6 +69,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
69
69
|
type: BooleanConstructor;
|
|
70
70
|
default: boolean;
|
|
71
71
|
};
|
|
72
|
+
reactionsEnabled: {
|
|
73
|
+
type: BooleanConstructor;
|
|
74
|
+
default: boolean;
|
|
75
|
+
};
|
|
72
76
|
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
73
77
|
loadMore: (...args: any[]) => void;
|
|
74
78
|
keyboardAction: (...args: any[]) => void;
|
|
@@ -144,6 +148,10 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
144
148
|
type: BooleanConstructor;
|
|
145
149
|
default: boolean;
|
|
146
150
|
};
|
|
151
|
+
reactionsEnabled: {
|
|
152
|
+
type: BooleanConstructor;
|
|
153
|
+
default: boolean;
|
|
154
|
+
};
|
|
147
155
|
}>> & Readonly<{
|
|
148
156
|
onLoadMore?: ((...args: any[]) => any) | undefined;
|
|
149
157
|
onKeyboardAction?: ((...args: any[]) => any) | undefined;
|
|
@@ -157,6 +165,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
157
165
|
typing: boolean | IFeedTyping;
|
|
158
166
|
chatBackground: string;
|
|
159
167
|
applyStyle: Function;
|
|
168
|
+
reactionsEnabled: boolean;
|
|
160
169
|
enableDoubleClickReply: boolean;
|
|
161
170
|
buttonParams: IFeedUnreadButton;
|
|
162
171
|
scrollToBottom: boolean;
|
|
@@ -4,7 +4,6 @@ declare const meta: Meta<typeof Feed>;
|
|
|
4
4
|
export default meta;
|
|
5
5
|
type Story = StoryObj<typeof Feed>;
|
|
6
6
|
export declare const Primary: Story;
|
|
7
|
-
export declare const WithDates: Story;
|
|
8
7
|
export declare const WithButtonUnread: Story;
|
|
9
8
|
export declare const PrimaryTyping: Story;
|
|
10
9
|
export declare const PrimaryTypingWithAvatarAndTitle: Story;
|
|
@@ -49,6 +49,7 @@ export { default as FileMessage } from './2_feed_elements/FileMessage/FileMessag
|
|
|
49
49
|
export { default as ImageMessage } from './2_feed_elements/ImageMessage/ImageMessage.vue';
|
|
50
50
|
export { default as MessageKeyboard } from './2_feed_elements/MessageKeyboard/MessageKeyboard.vue';
|
|
51
51
|
export { default as MessageReactions } from './2_feed_elements/MessageReactions/MessageReactions.vue';
|
|
52
|
+
export { default as MessageStatusIndicator } from './2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue';
|
|
52
53
|
export { default as StickerMessage } from './2_feed_elements/StickerMessage/StickerMessage.vue';
|
|
53
54
|
export { default as ReplyAudioMessage } from './2_feed_elements/ReplyAudioMessage/ReplyAudioMessage.vue';
|
|
54
55
|
export { default as ReplyCallMessage } from './2_feed_elements/ReplyCallMessage/ReplyCallMessage.vue';
|
|
@@ -67,6 +68,7 @@ export { default as ModalFullscreen } from './2_modals/ModalFullscreen/ModalFull
|
|
|
67
68
|
export { default as ModalNoFooter } from './2_modals/ModalNoFooter/ModalNoFooter.vue';
|
|
68
69
|
export { default as SelectUser } from './2_modals/SelectUser/SelectUser.vue';
|
|
69
70
|
export { default as ChatInput } from './3_compounds/ChatInput/ChatInput.vue';
|
|
71
|
+
export { default as ChatListHeader } from './3_compounds/ChatList/ChatListHeader.vue';
|
|
70
72
|
export { default as ChatList } from './3_compounds/ChatList/ChatList.vue';
|
|
71
73
|
export { default as Feed } from './3_compounds/Feed/Feed.vue';
|
|
72
74
|
export { default as SideBar } from './3_compounds/SideBar/SideBar.vue';
|
package/dist/vuessages.es.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { an as s, H as t, w as o, A as i, aq as l, al as r, I as n, i as d, B as u, j as c, k as M, l as g, J as p, x as C, t as m, y as S, ag as h, u as y, ai as R, ah as I, z as B, v as F, ap as A, a as T, b, f as V, c as f, D as k, C as v, K as P, N as D, E as L, am as x, aj as W, F as w, g as E, O as U, ao as j, h as H, Q as K, m as N, n as Q, ar as O, R as q, L as z, M as G, X as J, Y as X, Z as Y, ac as Z, ad as $, ae as _, P as aa, a0 as ea, a1 as sa, a2 as ta, a3 as oa, a4 as ia, a5 as la, a6 as ra, S as na, af as da, d as ua, ak as ca, a7 as Ma, $ as ga, a8 as pa, e as Ca, o as ma, a9 as Sa, G as ha, T as ya, aa as Ra, U as Ia, ab as Ba, V as Fa, p as Aa, q as Ta, r as ba, s as Va, W as fa, aZ as ka, aU as va, as as Pa, aY as Da, aJ as La, aM as xa, aS as Wa, aT as wa, at as Ea, aG as Ua, aW as ja, aV as Ha, aX as Ka, aR as Na, au as Qa, aH as Oa, av as qa, aw as za, aP as Ga, ax as Ja, aQ as Xa, aK as Ya, aA as Za, aB as $a, aC as _a, aD as ae, aE as ee, ay as se, aN as te, az as oe, aO as ie, aF as le, aI as re, aL as ne } from "./index-D8kOhf51.js";
|
|
2
2
|
export {
|
|
3
3
|
s as AdaptiveExtendedLayout,
|
|
4
4
|
t as AudioMessage,
|
|
5
5
|
o as AudioRecorder,
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
i as AvatarIcon,
|
|
7
|
+
l as BaseContainer,
|
|
8
|
+
r as BaseLayout,
|
|
9
|
+
n as BaseReplyMessage,
|
|
10
10
|
d as ButtonCommandsSelector,
|
|
11
11
|
u as ButtonContextMenu,
|
|
12
12
|
c as ButtonEmojiPicker,
|
|
@@ -16,101 +16,103 @@ export {
|
|
|
16
16
|
C as ChannelSelector,
|
|
17
17
|
m as ChatFilter,
|
|
18
18
|
S as ChatInfo,
|
|
19
|
-
|
|
20
|
-
|
|
19
|
+
h as ChatInput,
|
|
20
|
+
y as ChatItem,
|
|
21
21
|
R as ChatList,
|
|
22
|
+
I as ChatListHeader,
|
|
22
23
|
B as ChatPanel,
|
|
23
24
|
F as ChatTabs,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
25
|
+
A as ChatWrapper,
|
|
26
|
+
T as CheckIcon,
|
|
27
|
+
b as CloseButtonIcon,
|
|
28
|
+
V as CommunicationPanel,
|
|
29
|
+
f as ContactCRMIcon,
|
|
30
|
+
k as ContactInfo,
|
|
31
|
+
v as ContextMenu,
|
|
32
|
+
P as DateMessage,
|
|
33
|
+
D as DateMessageSticky,
|
|
34
|
+
L as EmbedPreview,
|
|
34
35
|
x as ExtendedLayout,
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
36
|
+
W as Feed,
|
|
37
|
+
w as FeedFoundItem,
|
|
38
|
+
E as FeedFoundObjects,
|
|
39
|
+
U as FeedKeyboard,
|
|
40
|
+
j as FeedLayout,
|
|
41
|
+
H as FeedSearch,
|
|
41
42
|
K as FileMessage,
|
|
42
43
|
N as FilePreview,
|
|
43
44
|
Q as FileUploader,
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
la as
|
|
61
|
-
|
|
62
|
-
na as
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
ya as
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
Ba as
|
|
77
|
-
Fa as
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
xa as
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
Ka as
|
|
96
|
-
Na as
|
|
97
|
-
Qa as
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
le as
|
|
115
|
-
|
|
45
|
+
O as FloatContainer,
|
|
46
|
+
q as ImageMessage,
|
|
47
|
+
z as LinkPreview,
|
|
48
|
+
G as MenuIcon,
|
|
49
|
+
J as MessageKeyboard,
|
|
50
|
+
X as MessageReactions,
|
|
51
|
+
Y as MessageStatusIndicator,
|
|
52
|
+
Z as Modal,
|
|
53
|
+
$ as ModalFullscreen,
|
|
54
|
+
_ as ModalNoFooter,
|
|
55
|
+
aa as PlaceholderComponent,
|
|
56
|
+
ea as ReplyAudioMessage,
|
|
57
|
+
sa as ReplyCallMessage,
|
|
58
|
+
ta as ReplyFileMessage,
|
|
59
|
+
oa as ReplyImageMessage,
|
|
60
|
+
ia as ReplyStickerMessage,
|
|
61
|
+
la as ReplyTextMessage,
|
|
62
|
+
ra as ReplyVideoMessage,
|
|
63
|
+
na as SearchIcon,
|
|
64
|
+
da as SelectUser,
|
|
65
|
+
ua as SettingsIcon,
|
|
66
|
+
ca as SideBar,
|
|
67
|
+
Ma as SplashScreen,
|
|
68
|
+
ga as StickerMessage,
|
|
69
|
+
pa as SystemMessage,
|
|
70
|
+
Ca as TelegramIcon,
|
|
71
|
+
ma as TemplateSelector,
|
|
72
|
+
Sa as TextMessage,
|
|
73
|
+
ha as ThemeMode,
|
|
74
|
+
ya as Tooltip,
|
|
75
|
+
Ra as TypingMessage,
|
|
76
|
+
Ia as UserProfile,
|
|
77
|
+
Ba as VideoMessage,
|
|
78
|
+
Fa as VideoRecorder,
|
|
79
|
+
Aa as WABAAttachmentSection,
|
|
80
|
+
Ta as WABAQuickReplyButtons,
|
|
81
|
+
ba as WABASeparatedQuickButtons,
|
|
82
|
+
Va as WABATemplateSelector,
|
|
83
|
+
fa as WhatsAppIcon,
|
|
84
|
+
ka as createReactionHandlers,
|
|
85
|
+
va as formatTimestamp,
|
|
86
|
+
Pa as generatePreview,
|
|
87
|
+
Da as getMessageClass,
|
|
88
|
+
La as getMessageValidationReport,
|
|
89
|
+
xa as getSidebarValidationReport,
|
|
90
|
+
Wa as getStatus,
|
|
91
|
+
wa as getStatusTitle,
|
|
92
|
+
Ea as getTypeFileByMime,
|
|
93
|
+
Ua as getValidationReport,
|
|
94
|
+
ja as insertDaySeparators,
|
|
95
|
+
Ha as playNotificationAudio,
|
|
96
|
+
Ka as sortByTimestamp,
|
|
97
|
+
Na as statuses,
|
|
98
|
+
Qa as uploadFile,
|
|
99
|
+
Oa as useChatValidator,
|
|
100
|
+
qa as useDelayDebouncedRef,
|
|
101
|
+
za as useImmediateDebouncedRef,
|
|
102
|
+
Ga as useMessageActions,
|
|
103
|
+
Ja as useMessageDraft,
|
|
104
|
+
Xa as useMessageLinks,
|
|
105
|
+
Ya as useMessageValidator,
|
|
106
|
+
Za as useModalCreateChat,
|
|
107
|
+
$a as useModalCreateChat2,
|
|
108
|
+
_a as useModalCreateDialog,
|
|
109
|
+
ae as useModalSelectUser2,
|
|
110
|
+
ee as useModalVideoRecorder,
|
|
111
|
+
se as useSearchModel,
|
|
112
|
+
te as useSidebarValidator,
|
|
113
|
+
oe as useTheme,
|
|
114
|
+
ie as useValidation,
|
|
115
|
+
le as validateChats,
|
|
116
|
+
re as validateMessages,
|
|
117
|
+
ne as validateSidebarItems
|
|
116
118
|
};
|