@mobilon-dev/chotto 0.3.86 → 0.3.88
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/chotto.css +1 -1
- package/dist/components/1_atoms/ButtonContextMenu/ButtonContextMenu.vue2.js +15 -13
- package/dist/components/1_atoms/ContactContextMenu/ContactContextMenu.vue2.js +4 -2
- package/dist/components/1_atoms/ContextMenu/ContextMenu.vue.js +43 -39
- package/dist/components/1_atoms/EmojiGlyph/EmojiGlyph.vue.js +7 -5
- package/dist/components/1_atoms/LoadingIndicator/LoadingIndicator.vue.js +19 -18
- package/dist/components/1_atoms/Tooltip/Tooltip.vue.js +2 -2
- package/dist/components/1_atoms/Tooltip/Tooltip.vue2.js +83 -72
- package/dist/components/2_blocks/FeedSearch/FeedSearch.vue2.js +11 -10
- package/dist/components/2_chatinput_elements/ButtonCommandsSelector/ButtonCommandsSelector.vue2.js +4 -2
- package/dist/components/2_chatinput_elements/ButtonEmojiPicker/ButtonEmojiPicker.vue2.js +18 -16
- package/dist/components/2_chatinput_elements/ButtonTemplateSelector/ButtonTemplateSelector.vue2.js +16 -14
- package/dist/components/2_chatinput_elements/ButtonWabaTemplateSelector/ButtonWabaTemplateSelector.vue.js +4 -2
- package/dist/components/2_chatinput_elements/FilePreview/FilePreview.vue2.js +4 -2
- package/dist/components/2_chatinput_elements/FileUploader/FileUploader.vue2.js +4 -2
- package/dist/components/2_chatinput_elements/StickerPicker/StickerPicker.vue2.js +4 -2
- package/dist/components/2_chatinput_elements/TemplateSelector/TemplateSelector.vue.js +4 -2
- package/dist/components/2_chatinput_elements/TextFormatToolbar/TextFormatToolbar.vue2.js +4 -3
- package/dist/components/2_chatinput_elements/WABAAttachmentSection/WABAAttachmentSection.vue2.js +4 -2
- package/dist/components/2_chatlist_elements/ChatItem/ChatItem.vue2.js +3 -2
- package/dist/components/2_elements/AudioRecorder/AudioRecorder.vue2.js +4 -2
- package/dist/components/2_elements/ChannelSelector/ChannelSelector.vue.js +3 -2
- package/dist/components/2_elements/ThemeMode/ThemeMode.vue.js +7 -5
- package/dist/components/2_elements/VideoRecorder/VideoRecorder.vue2.js +4 -2
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue2.js +387 -340
- package/dist/components/2_feed_elements/BaseEditMessage/BaseEditMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/BaseEditMessage/BaseEditMessage.vue2.js +34 -0
- package/dist/components/2_feed_elements/CallMessage/CallMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/CallMessage/CallMessage.vue2.js +388 -352
- package/dist/components/2_feed_elements/DeletedMessageContent/DeletedMessageContent.vue.js +7 -0
- package/dist/components/2_feed_elements/DeletedMessageContent/DeletedMessageContent.vue2.js +63 -0
- package/dist/components/2_feed_elements/DeletedMessageContent/icons/DeletedMessageIcon.vue.js +21 -0
- package/dist/components/2_feed_elements/EditTextMessage/EditTextMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/EditTextMessage/EditTextMessage.vue2.js +35 -0
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue2.js +204 -157
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue.js +3 -3
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue2.js +273 -226
- package/dist/components/2_feed_elements/MessageKeyboard/MessageKeyboard.vue2.js +9 -7
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue.js +2 -2
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue2.js +141 -117
- package/dist/components/2_feed_elements/MessageReactions/icons/DeleteIcon.vue.js +32 -0
- package/dist/components/2_feed_elements/MessageReactions/icons/EditIcon.vue.js +32 -0
- package/dist/components/2_feed_elements/MessageReactions/icons/MessageActionsIcon.vue.js +21 -0
- package/dist/components/2_feed_elements/MissedCallMessage/MissedCallMessage.vue.js +4 -4
- package/dist/components/2_feed_elements/MissedCallMessage/MissedCallMessage.vue2.js +102 -66
- package/dist/components/2_feed_elements/ReplyAudioMessage/ReplyAudioMessage.vue2.js +11 -9
- package/dist/components/2_feed_elements/ReplyFileMessage/ReplyFileMessage.vue2.js +14 -12
- package/dist/components/2_feed_elements/ReplyImageMessage/ReplyImageMessage.vue2.js +11 -9
- package/dist/components/2_feed_elements/ReplyStickerMessage/ReplyStickerMessage.vue2.js +13 -11
- package/dist/components/2_feed_elements/ReplyTextMessage/ReplyTextMessage.vue2.js +11 -9
- package/dist/components/2_feed_elements/ReplyVideoMessage/ReplyVideoMessage.vue2.js +4 -2
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue2.js +255 -210
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue2.js +241 -140
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue.js +3 -3
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue2.js +245 -200
- package/dist/components/2_modals/ConfirmDeleteMessage/ConfirmDeleteMessage.vue.js +7 -0
- package/dist/components/2_modals/ConfirmDeleteMessage/ConfirmDeleteMessage.vue3.js +58 -0
- package/dist/components/3_compounds/ChatInput/ChatInput.vue.js +2 -2
- package/dist/components/3_compounds/ChatInput/ChatInput.vue2.js +5 -4
- package/dist/components/3_compounds/ChatList/ChatListHeader.vue.js +8 -8
- package/dist/components/3_compounds/ChatList/icons/LogoIcon.vue.js +12 -13
- package/dist/components/3_compounds/Feed/Feed.vue.js +2 -2
- package/dist/components/3_compounds/Feed/Feed.vue2.js +187 -163
- package/dist/components/3_compounds/Feed/composables/useFeedComponents.js +41 -26
- package/dist/components/3_compounds/Feed/composables/useFeedGrouping.js +22 -5
- package/dist/components/3_compounds/Feed/composables/useFeedReply.js +16 -11
- package/dist/components/3_compounds/Feed/utils/getDefaultMessageMenuActions.js +31 -0
- package/dist/hooks/messages/buildEditPayload.js +10 -0
- package/dist/hooks/messages/calculateMessageMenuPosition.js +70 -0
- package/dist/hooks/messages/getDeletedOriginalText.js +26 -0
- package/dist/hooks/messages/getEditTooltipLines.js +28 -0
- package/dist/hooks/messages/useMessageActions.js +94 -19
- package/dist/hooks/messages/useMessageMenuActions.js +18 -0
- package/dist/hooks/messages/useStartEdit.js +30 -0
- package/dist/hooks/messages/useStartReply.js +16 -14
- package/dist/hooks/modals/useConfirmDeleteMessage.js +24 -0
- package/dist/hooks/useMessageDraft.js +46 -66
- package/dist/hooks/validators/messages/messageValidator.js +29 -35
- package/dist/index.js +220 -194
- package/dist/locale/en.js +6 -1
- package/dist/locale/ru.js +6 -1
- package/dist/themes/dark.css +1 -1
- package/dist/themes/default.css +1 -1
- package/dist/themes/glass.css +1 -1
- package/dist/themes/green.css +1 -1
- package/dist/themes/mobilon1.css +1 -1
- package/dist/types/apps/data/messages.d.ts +0 -321
- package/dist/types/components/1_atoms/ContextMenu/ContextMenu.vue.d.ts +0 -2
- package/dist/types/components/1_atoms/ContextMenu/stories/ContextMenu.stories.d.ts +1 -0
- package/dist/types/components/1_atoms/ContextMenu/styles/types.d.ts +18 -0
- package/dist/types/components/1_atoms/LoadingIndicator/styles/types.d.ts +0 -2
- package/dist/types/components/1_atoms/Tooltip/Tooltip.vue.d.ts +12 -1
- package/dist/types/components/2_feed_elements/BaseEditMessage/BaseEditMessage.vue.d.ts +23 -0
- package/dist/types/components/2_feed_elements/BaseEditMessage/stories/BaseEditMessage.stories.d.ts +6 -0
- package/dist/types/components/2_feed_elements/DeletedMessageContent/DeletedMessageContent.vue.d.ts +31 -0
- package/dist/types/components/2_feed_elements/DeletedMessageContent/icons/DeletedMessageIcon.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/DeletedMessageContent/styles/types.d.ts +35 -0
- package/dist/types/components/2_feed_elements/EditTextMessage/EditTextMessage.vue.d.ts +13 -0
- package/dist/types/components/2_feed_elements/EditTextMessage/stories/EditTextMessage.stories.d.ts +7 -0
- package/dist/types/components/2_feed_elements/FeedKeyboard/FeedKeyboard.vue.d.ts +1 -1
- package/dist/types/components/2_feed_elements/MessageKeyboard/MessageKeyboard.vue.d.ts +1 -1
- package/dist/types/components/2_feed_elements/MessageReactions/MessageReactions.vue.d.ts +35 -0
- package/dist/types/components/2_feed_elements/MessageReactions/icons/DeleteIcon.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/MessageReactions/icons/EditIcon.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/MessageReactions/icons/MessageActionsIcon.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/TextMessage/TextMessage.vue.d.ts +11 -3
- package/dist/types/components/2_feed_elements/TextMessage/stories/TextMessage.stories.d.ts +1 -0
- package/dist/types/components/2_feed_elements/TextMessage/styles/types.d.ts +22 -0
- package/dist/types/components/2_feed_elements/VideoMessage/stories/VideoMessage.stories.d.ts +2 -2
- package/dist/types/components/2_feed_elements/types/components.d.ts +1 -2
- package/dist/types/components/2_feed_elements/types/messages.d.ts +116 -9
- package/dist/types/components/2_modals/ConfirmDeleteMessage/ConfirmDeleteMessage.vue.d.ts +22 -0
- package/dist/types/components/2_modals/ConfirmDeleteMessage/stories/ConfirmDeleteMessage.stories.d.ts +37 -0
- package/dist/types/components/2_modals/ConfirmDeleteMessage/styles/types.d.ts +97 -0
- package/dist/types/components/3_compounds/ChatInput/types/IInputMessage.d.ts +2 -1
- package/dist/types/components/3_compounds/ChatList/styles/types.d.ts +2 -2
- package/dist/types/components/3_compounds/Feed/Feed.vue.d.ts +20 -3
- package/dist/types/components/3_compounds/Feed/composables/useFeedComponents.d.ts +6 -2
- package/dist/types/components/3_compounds/Feed/composables/useFeedGrouping.d.ts +0 -1
- package/dist/types/components/3_compounds/Feed/composables/useFeedReply.d.ts +7 -1
- package/dist/types/components/3_compounds/Feed/utils/getDefaultMessageMenuActions.d.ts +3 -0
- package/dist/types/components/3_compounds/SideBar/SideBar.vue.d.ts +2 -2
- package/dist/types/components/index.d.ts +4 -0
- package/dist/types/hooks/messages/buildEditPayload.d.ts +7 -0
- package/dist/types/hooks/messages/calculateMessageMenuPosition.d.ts +16 -0
- package/dist/types/hooks/messages/getDeletedOriginalText.d.ts +28 -0
- package/dist/types/hooks/messages/getEditTooltipLines.d.ts +17 -0
- package/dist/types/hooks/messages/index.d.ts +6 -0
- package/dist/types/hooks/messages/useMessageActions.d.ts +33 -39
- package/dist/types/hooks/messages/useMessageMenuActions.d.ts +10 -0
- package/dist/types/hooks/messages/useStartEdit.d.ts +6 -0
- package/dist/types/hooks/modals/index.d.ts +1 -0
- package/dist/types/hooks/modals/useConfirmDeleteMessage.d.ts +2 -0
- package/dist/types/hooks/useMessageDraft.d.ts +10 -1
- package/dist/types/hooks/validators/messages/types.d.ts +0 -6
- package/dist/types/locale/en.d.ts +5 -0
- package/dist/types/locale/ru.d.ts +5 -0
- package/dist/types/main.d.ts +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
2
|
+
theme: {
|
|
3
|
+
type: StringConstructor;
|
|
4
|
+
required: false;
|
|
5
|
+
default: string;
|
|
6
|
+
};
|
|
7
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
8
|
+
cancel: () => any;
|
|
9
|
+
confirm: () => any;
|
|
10
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
11
|
+
theme: {
|
|
12
|
+
type: StringConstructor;
|
|
13
|
+
required: false;
|
|
14
|
+
default: string;
|
|
15
|
+
};
|
|
16
|
+
}>> & Readonly<{
|
|
17
|
+
onCancel?: (() => any) | undefined;
|
|
18
|
+
onConfirm?: (() => any) | undefined;
|
|
19
|
+
}>, {
|
|
20
|
+
theme: string;
|
|
21
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
22
|
+
export default _default;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { StoryObj } from '@storybook/vue3-vite';
|
|
2
|
+
declare const meta: {
|
|
3
|
+
title: string;
|
|
4
|
+
component: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
5
|
+
theme: {
|
|
6
|
+
type: StringConstructor;
|
|
7
|
+
required: false;
|
|
8
|
+
default: string;
|
|
9
|
+
};
|
|
10
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
11
|
+
cancel: () => any;
|
|
12
|
+
confirm: () => any;
|
|
13
|
+
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
14
|
+
theme: {
|
|
15
|
+
type: StringConstructor;
|
|
16
|
+
required: false;
|
|
17
|
+
default: string;
|
|
18
|
+
};
|
|
19
|
+
}>> & Readonly<{
|
|
20
|
+
onCancel?: (() => any) | undefined;
|
|
21
|
+
onConfirm?: (() => any) | undefined;
|
|
22
|
+
}>, {
|
|
23
|
+
theme: string;
|
|
24
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
25
|
+
args: {
|
|
26
|
+
theme: string;
|
|
27
|
+
};
|
|
28
|
+
argTypes: {
|
|
29
|
+
theme: {
|
|
30
|
+
control: "select";
|
|
31
|
+
options: string[];
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
};
|
|
35
|
+
export default meta;
|
|
36
|
+
type Story = StoryObj<typeof meta>;
|
|
37
|
+
export declare const Default: Story;
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* CSS переменные для компонента ConfirmDeleteMessage
|
|
3
|
+
*/
|
|
4
|
+
export interface ConfirmDeleteMessageThemeCSSVariables {
|
|
5
|
+
/** Позиционирование оверлея */
|
|
6
|
+
'--chotto-confirmdeletemessage-backdrop-position': string;
|
|
7
|
+
/** Фон оверлея */
|
|
8
|
+
'--chotto-confirmdeletemessage-backdrop-bg': string;
|
|
9
|
+
/** Фильтр оверлея */
|
|
10
|
+
'--chotto-confirmdeletemessage-backdrop-filter': string;
|
|
11
|
+
/** Отображение оверлея */
|
|
12
|
+
'--chotto-confirmdeletemessage-backdrop-display': string;
|
|
13
|
+
/** Выравнивание по горизонтали */
|
|
14
|
+
'--chotto-confirmdeletemessage-backdrop-justify': string;
|
|
15
|
+
/** Выравнивание по вертикали */
|
|
16
|
+
'--chotto-confirmdeletemessage-backdrop-align': string;
|
|
17
|
+
/** Z-index оверлея */
|
|
18
|
+
'--chotto-confirmdeletemessage-backdrop-z-index': string;
|
|
19
|
+
/** Ширина диалога */
|
|
20
|
+
'--chotto-confirmdeletemessage-width': string;
|
|
21
|
+
/** Высота диалога */
|
|
22
|
+
'--chotto-confirmdeletemessage-height': string;
|
|
23
|
+
/** Внутренние отступы диалога */
|
|
24
|
+
'--chotto-confirmdeletemessage-padding': string;
|
|
25
|
+
/** Фон диалога */
|
|
26
|
+
'--chotto-confirmdeletemessage-background': string;
|
|
27
|
+
/** Граница диалога */
|
|
28
|
+
'--chotto-confirmdeletemessage-border': string;
|
|
29
|
+
/** Тень диалога */
|
|
30
|
+
'--chotto-confirmdeletemessage-box-shadow': string;
|
|
31
|
+
/** Радиус границы диалога */
|
|
32
|
+
'--chotto-confirmdeletemessage-border-radius': string;
|
|
33
|
+
/** Отображение диалога */
|
|
34
|
+
'--chotto-confirmdeletemessage-display': string;
|
|
35
|
+
/** Направление flex диалога */
|
|
36
|
+
'--chotto-confirmdeletemessage-flex-direction': string;
|
|
37
|
+
/** Выравнивание элементов по горизонтали */
|
|
38
|
+
'--chotto-confirmdeletemessage-align-items': string;
|
|
39
|
+
/** Выравнивание содержимого по вертикали */
|
|
40
|
+
'--chotto-confirmdeletemessage-justify-content': string;
|
|
41
|
+
/** Максимальная ширина диалога */
|
|
42
|
+
'--chotto-confirmdeletemessage-max-width': string;
|
|
43
|
+
/** Отступы заголовка */
|
|
44
|
+
'--chotto-confirmdeletemessage-title-margin': string;
|
|
45
|
+
/** Ширина заголовка */
|
|
46
|
+
'--chotto-confirmdeletemessage-title-width': string;
|
|
47
|
+
/** Выравнивание текста заголовка */
|
|
48
|
+
'--chotto-confirmdeletemessage-title-text-align': string;
|
|
49
|
+
/** Семейство шрифтов заголовка */
|
|
50
|
+
'--chotto-confirmdeletemessage-title-font-family': string;
|
|
51
|
+
/** Жирность шрифта заголовка */
|
|
52
|
+
'--chotto-confirmdeletemessage-title-font-weight': string;
|
|
53
|
+
/** Размер шрифта заголовка */
|
|
54
|
+
'--chotto-confirmdeletemessage-title-font-size': string;
|
|
55
|
+
/** Высота строки заголовка */
|
|
56
|
+
'--chotto-confirmdeletemessage-title-line-height': string;
|
|
57
|
+
/** Цвет заголовка */
|
|
58
|
+
'--chotto-confirmdeletemessage-title-color': string;
|
|
59
|
+
/** Отображение блока кнопок */
|
|
60
|
+
'--chotto-confirmdeletemessage-actions-display': string;
|
|
61
|
+
/** Выравнивание кнопок по вертикали */
|
|
62
|
+
'--chotto-confirmdeletemessage-actions-align-items': string;
|
|
63
|
+
/** Выравнивание кнопок по горизонтали */
|
|
64
|
+
'--chotto-confirmdeletemessage-actions-justify-content': string;
|
|
65
|
+
/** Отступ между кнопками */
|
|
66
|
+
'--chotto-confirmdeletemessage-actions-gap': string;
|
|
67
|
+
/** Ширина кнопки */
|
|
68
|
+
'--chotto-confirmdeletemessage-btn-width': string;
|
|
69
|
+
/** Высота кнопки */
|
|
70
|
+
'--chotto-confirmdeletemessage-btn-height': string;
|
|
71
|
+
/** Семейство шрифтов кнопки */
|
|
72
|
+
'--chotto-confirmdeletemessage-btn-font-family': string;
|
|
73
|
+
/** Жирность шрифта кнопки */
|
|
74
|
+
'--chotto-confirmdeletemessage-btn-font-weight': string;
|
|
75
|
+
/** Размер шрифта кнопки */
|
|
76
|
+
'--chotto-confirmdeletemessage-btn-font-size': string;
|
|
77
|
+
/** Курсор кнопки */
|
|
78
|
+
'--chotto-confirmdeletemessage-btn-cursor': string;
|
|
79
|
+
/** Фон кнопки */
|
|
80
|
+
'--chotto-confirmdeletemessage-btn-background': string;
|
|
81
|
+
/** Цвет текста кнопки удаления */
|
|
82
|
+
'--chotto-confirmdeletemessage-btn-delete-color': string;
|
|
83
|
+
/** Граница кнопки удаления */
|
|
84
|
+
'--chotto-confirmdeletemessage-btn-delete-border': string;
|
|
85
|
+
/** Радиус границы кнопки удаления */
|
|
86
|
+
'--chotto-confirmdeletemessage-btn-delete-border-radius': string;
|
|
87
|
+
/** Цвет текста кнопки отмены */
|
|
88
|
+
'--chotto-confirmdeletemessage-btn-cancel-color': string;
|
|
89
|
+
/** Граница кнопки отмены */
|
|
90
|
+
'--chotto-confirmdeletemessage-btn-cancel-border': string;
|
|
91
|
+
/** Переход появления/скрытия */
|
|
92
|
+
'--chotto-confirmdeletemessage-transition': string;
|
|
93
|
+
/** Начальная прозрачность */
|
|
94
|
+
'--chotto-confirmdeletemessage-enter-opacity': string;
|
|
95
|
+
/** Конечная прозрачность */
|
|
96
|
+
'--chotto-confirmdeletemessage-enter-to-opacity': string;
|
|
97
|
+
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Reply } from "@/types";
|
|
1
|
+
import { Edit, Reply } from "@/types";
|
|
2
2
|
export interface IInputMessage {
|
|
3
3
|
type: string;
|
|
4
4
|
text?: string;
|
|
@@ -6,4 +6,5 @@ export interface IInputMessage {
|
|
|
6
6
|
filename?: string;
|
|
7
7
|
size?: string;
|
|
8
8
|
reply?: Reply;
|
|
9
|
+
edit?: Edit;
|
|
9
10
|
}
|
|
@@ -88,8 +88,8 @@ export interface ChatListThemeCSSVariables {
|
|
|
88
88
|
'--chotto-chatlist-title-logo-width': string;
|
|
89
89
|
/** Высота логотипа заголовка */
|
|
90
90
|
'--chotto-chatlist-title-logo-height': string;
|
|
91
|
-
/** Отступ
|
|
92
|
-
'--chotto-chatlist-title-logo-margin-
|
|
91
|
+
/** Отступ справа логотипа заголовка */
|
|
92
|
+
'--chotto-chatlist-title-logo-margin-right': string;
|
|
93
93
|
/** Коэффициент сжатия логотипа заголовка */
|
|
94
94
|
'--chotto-chatlist-title-logo-flex-shrink': string;
|
|
95
95
|
/** Отображение бейджа beta заголовка */
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { IFeedObject, IFeedTyping, IFeedUnreadButton, IFeedKeyboard } from '@/types';
|
|
1
|
+
import { IFeedObject, IFeedTyping, IFeedUnreadButton, IFeedKeyboard, IFeedMessageMenuAction } from '@/types';
|
|
2
2
|
declare var __VLS_1: {}, __VLS_47: {};
|
|
3
3
|
type __VLS_Slots = {} & {
|
|
4
4
|
prepend?: (props: typeof __VLS_1) => any;
|
|
@@ -104,6 +104,14 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
104
104
|
required: false;
|
|
105
105
|
default: undefined;
|
|
106
106
|
};
|
|
107
|
+
/**
|
|
108
|
+
* Пункты контекстного меню сообщений (с иконками).
|
|
109
|
+
* По умолчанию: Ответить, Редактировать, разделитель, Удалить (красный).
|
|
110
|
+
*/
|
|
111
|
+
messageMenuActions: {
|
|
112
|
+
type: () => IFeedMessageMenuAction[];
|
|
113
|
+
default: () => IFeedMessageMenuAction[];
|
|
114
|
+
};
|
|
107
115
|
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
|
|
108
116
|
loadMore: (...args: any[]) => void;
|
|
109
117
|
smsInvite: (...args: any[]) => void;
|
|
@@ -214,6 +222,14 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
214
222
|
required: false;
|
|
215
223
|
default: undefined;
|
|
216
224
|
};
|
|
225
|
+
/**
|
|
226
|
+
* Пункты контекстного меню сообщений (с иконками).
|
|
227
|
+
* По умолчанию: Ответить, Редактировать, разделитель, Удалить (красный).
|
|
228
|
+
*/
|
|
229
|
+
messageMenuActions: {
|
|
230
|
+
type: () => IFeedMessageMenuAction[];
|
|
231
|
+
default: () => IFeedMessageMenuAction[];
|
|
232
|
+
};
|
|
217
233
|
}>> & Readonly<{
|
|
218
234
|
onLoadMore?: ((...args: any[]) => any) | undefined;
|
|
219
235
|
onSmsInvite?: ((...args: any[]) => any) | undefined;
|
|
@@ -227,6 +243,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
227
243
|
onDelimiterRead?: ((...args: any[]) => any) | undefined;
|
|
228
244
|
}>, {
|
|
229
245
|
typing: boolean | IFeedTyping;
|
|
246
|
+
messageMenuActions: IFeedMessageMenuAction[];
|
|
230
247
|
chatBackground: string;
|
|
231
248
|
currentUserId: string | number | undefined;
|
|
232
249
|
reactionUserNames: Record<string, string>;
|
|
@@ -238,9 +255,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
|
|
|
238
255
|
buttonParams: IFeedUnreadButton;
|
|
239
256
|
scrollToBottom: boolean;
|
|
240
257
|
scrollTo: string;
|
|
241
|
-
keyboardAlign: "
|
|
258
|
+
keyboardAlign: "center" | "left" | "right";
|
|
242
259
|
feedKeyboards: IFeedKeyboard[];
|
|
243
|
-
feedKeyboardAlign: "
|
|
260
|
+
feedKeyboardAlign: "center" | "left" | "right";
|
|
244
261
|
isLoadingMore: boolean;
|
|
245
262
|
callMessageOnCallback: ((message: IFeedObject) => void) | undefined;
|
|
246
263
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Композабл для маппинга типов сообщений на
|
|
2
|
+
* Композабл для маппинга типов сообщений на компоненты.
|
|
3
|
+
* Удалённые сообщения ленты всегда рендерятся как TextMessage.
|
|
3
4
|
*/
|
|
4
5
|
export declare function useFeedComponents(): {
|
|
5
|
-
componentsMap: (
|
|
6
|
+
componentsMap: (object: {
|
|
7
|
+
type?: string;
|
|
8
|
+
deleted?: boolean;
|
|
9
|
+
} | string) => unknown;
|
|
6
10
|
};
|
|
@@ -4,7 +4,7 @@ interface UseFeedReplyOptions {
|
|
|
4
4
|
emit: (event: 'messageAction' | 'clickRepliedMessage', payload: IFeedObject | string) => void;
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
|
-
* Композабл для обработки ответов
|
|
7
|
+
* Композабл для обработки ответов и редактирования сообщений
|
|
8
8
|
*/
|
|
9
9
|
export declare function useFeedReply({ enableDoubleClickReply, emit }: UseFeedReplyOptions): {
|
|
10
10
|
getMessage: () => {
|
|
@@ -26,6 +26,11 @@ export declare function useFeedReply({ enableDoubleClickReply, emit }: UseFeedRe
|
|
|
26
26
|
callDuration?: string | undefined;
|
|
27
27
|
isMissedCall?: boolean | undefined;
|
|
28
28
|
} | undefined;
|
|
29
|
+
edit?: {
|
|
30
|
+
messageId: string;
|
|
31
|
+
type: string;
|
|
32
|
+
text?: string | undefined;
|
|
33
|
+
} | undefined;
|
|
29
34
|
forceSend: boolean;
|
|
30
35
|
isRecording: boolean;
|
|
31
36
|
};
|
|
@@ -33,5 +38,6 @@ export declare function useFeedReply({ enableDoubleClickReply, emit }: UseFeedRe
|
|
|
33
38
|
handleClickReplied: (messageId: string) => void;
|
|
34
39
|
feedObjectDoubleClick: (event: MouseEvent, object: IFeedObject) => void;
|
|
35
40
|
handleResetReply: () => void;
|
|
41
|
+
handleResetEdit: () => void;
|
|
36
42
|
};
|
|
37
43
|
export {};
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
declare const _default: import("vue").DefineComponent<{}, {
|
|
2
2
|
$emit: (event: "selectItem" | "settingsClick", ...args: any[]) => void;
|
|
3
3
|
sidebarItems: unknown[];
|
|
4
|
-
horizontal: boolean;
|
|
5
4
|
menuActions: unknown[];
|
|
5
|
+
horizontal: boolean;
|
|
6
6
|
showSettings: boolean;
|
|
7
7
|
settingsButtonMode: string;
|
|
8
8
|
showSettingsIndicator: boolean;
|
|
@@ -11,8 +11,8 @@ declare const _default: import("vue").DefineComponent<{}, {
|
|
|
11
11
|
settingsIndicatorTooltipAutoShowMs: number;
|
|
12
12
|
$props: {
|
|
13
13
|
readonly sidebarItems?: unknown[] | undefined;
|
|
14
|
-
readonly horizontal?: boolean | undefined;
|
|
15
14
|
readonly menuActions?: unknown[] | undefined;
|
|
15
|
+
readonly horizontal?: boolean | undefined;
|
|
16
16
|
readonly showSettings?: boolean | undefined;
|
|
17
17
|
readonly settingsButtonMode?: string | undefined;
|
|
18
18
|
readonly showSettingsIndicator?: boolean | undefined;
|
|
@@ -49,11 +49,14 @@ export { default as UserProfile } from './2_elements/UserProfile/UserProfile.vue
|
|
|
49
49
|
export { default as VideoRecorder } from './2_elements/VideoRecorder/VideoRecorder.vue';
|
|
50
50
|
export { default as AudioMessage } from './2_feed_elements/AudioMessage/AudioMessage.vue';
|
|
51
51
|
export { default as BaseReplyMessage } from './2_feed_elements/BaseReplyMessage/BaseReplyMessage.vue';
|
|
52
|
+
export { default as BaseEditMessage } from './2_feed_elements/BaseEditMessage/BaseEditMessage.vue';
|
|
52
53
|
export { default as CallMessage } from './2_feed_elements/CallMessage/CallMessage.vue';
|
|
53
54
|
export { default as DateMessage } from './2_feed_elements/DateMessage/DateMessage.vue';
|
|
55
|
+
export { default as DeletedMessageContent } from './2_feed_elements/DeletedMessageContent/DeletedMessageContent.vue';
|
|
54
56
|
export { default as MissedCallMessage } from './2_feed_elements/MissedCallMessage/MissedCallMessage.vue';
|
|
55
57
|
export { default as DateMessageSticky } from './2_feed_elements/DateMessageSticky/DateMessageSticky.vue';
|
|
56
58
|
export { default as DelimiterMessage } from './2_feed_elements/DelimiterMessage/DelimiterMessage.vue';
|
|
59
|
+
export { default as EditTextMessage } from './2_feed_elements/EditTextMessage/EditTextMessage.vue';
|
|
57
60
|
export { default as FeedKeyboard } from './2_feed_elements/FeedKeyboard/FeedKeyboard.vue';
|
|
58
61
|
export { default as FileMessage } from './2_feed_elements/FileMessage/FileMessage.vue';
|
|
59
62
|
export { default as ImageMessage } from './2_feed_elements/ImageMessage/ImageMessage.vue';
|
|
@@ -76,6 +79,7 @@ export { default as VideoMessage } from './2_feed_elements/VideoMessage/VideoMes
|
|
|
76
79
|
export { default as Modal } from './2_modals/Modal/Modal.vue';
|
|
77
80
|
export { default as ModalFullscreen } from './2_modals/ModalFullscreen/ModalFullscreen.vue';
|
|
78
81
|
export { default as ModalNoFooter } from './2_modals/ModalNoFooter/ModalNoFooter.vue';
|
|
82
|
+
export { default as ConfirmDeleteMessage } from './2_modals/ConfirmDeleteMessage/ConfirmDeleteMessage.vue';
|
|
79
83
|
export { default as SelectUser } from './2_modals/SelectUser/SelectUser.vue';
|
|
80
84
|
export { default as ChatInput } from './3_compounds/ChatInput/ChatInput.vue';
|
|
81
85
|
export { default as ChatListHeader } from './3_compounds/ChatList/ChatListHeader.vue';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export type MenuTriggerRect = Pick<DOMRect, 'top' | 'right' | 'bottom' | 'left' | 'width' | 'height'>;
|
|
2
|
+
/**
|
|
3
|
+
* Границы приложения для встроек: .base__container / .base / .chat-app / [data-theme],
|
|
4
|
+
* пересечённые с viewport.
|
|
5
|
+
*/
|
|
6
|
+
export declare function findAppBoundsRect(element: HTMLElement | null): DOMRect;
|
|
7
|
+
/**
|
|
8
|
+
* Позиция контекстного меню рядом с кнопкой «три точки» (position: fixed).
|
|
9
|
+
* Не выходит за границы приложения (важно для встроек).
|
|
10
|
+
*/
|
|
11
|
+
export declare function calculateMessageMenuPosition(menuElement: HTMLElement | null, options: {
|
|
12
|
+
triggerRect: MenuTriggerRect | null;
|
|
13
|
+
boundsElement: HTMLElement | null;
|
|
14
|
+
estimatedWidth?: number;
|
|
15
|
+
estimatedHeight?: number;
|
|
16
|
+
}): Promise<Record<string, string>>;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Текст и мета для тултипа удалённого сообщения
|
|
3
|
+
* (текст + «Имя, дата в время»).
|
|
4
|
+
*/
|
|
5
|
+
export type DeletedTooltipLines = {
|
|
6
|
+
original: string;
|
|
7
|
+
meta: string;
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* Строки тултипа для «Сообщение удалено»:
|
|
11
|
+
* original — исходный текст/подпись;
|
|
12
|
+
* meta — «Имя, дата в время».
|
|
13
|
+
*/
|
|
14
|
+
export declare function getDeletedTooltipLines(message: {
|
|
15
|
+
text?: string;
|
|
16
|
+
filename?: string;
|
|
17
|
+
alt?: string;
|
|
18
|
+
deletion?: {
|
|
19
|
+
deletedBy?: string;
|
|
20
|
+
deletedAt?: string;
|
|
21
|
+
} | null;
|
|
22
|
+
}): DeletedTooltipLines;
|
|
23
|
+
/** @deprecated используйте getDeletedTooltipLines().original */
|
|
24
|
+
export declare function getDeletedOriginalText(message: {
|
|
25
|
+
text?: string;
|
|
26
|
+
filename?: string;
|
|
27
|
+
alt?: string;
|
|
28
|
+
}): string;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { MessageEditInfo } from '@/types';
|
|
2
|
+
export type EditTooltipEntry = {
|
|
3
|
+
text: string;
|
|
4
|
+
meta: string;
|
|
5
|
+
};
|
|
6
|
+
export type EditTooltipLines = {
|
|
7
|
+
/** Оригинальный текст до первой правки */
|
|
8
|
+
original?: string;
|
|
9
|
+
/** Правки: текст версии и «Имя, дата в время» */
|
|
10
|
+
edits: EditTooltipEntry[];
|
|
11
|
+
};
|
|
12
|
+
/**
|
|
13
|
+
* Строки тултипа для метки «изменено»:
|
|
14
|
+
* original — текст до первой правки;
|
|
15
|
+
* edits — для каждой правки: текст версии + «Имя, дата в время».
|
|
16
|
+
*/
|
|
17
|
+
export declare function getEditTooltipLines(edited?: MessageEditInfo | null): EditTooltipLines;
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
export * from './useMessageActions';
|
|
2
|
+
export * from './calculateMessageMenuPosition';
|
|
3
|
+
export * from './useMessageMenuActions';
|
|
2
4
|
export * from './useMessageLinks';
|
|
3
5
|
export * from './useChannelAccentColor';
|
|
4
6
|
export * from './useSubtextTooltip';
|
|
5
7
|
export * from './useStartReply';
|
|
8
|
+
export * from './useStartEdit';
|
|
6
9
|
export * from './buildReplyPayload';
|
|
10
|
+
export * from './buildEditPayload';
|
|
11
|
+
export * from './getEditTooltipLines';
|
|
12
|
+
export * from './getDeletedOriginalText';
|
|
@@ -1,55 +1,49 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
2
|
+
* Composable для общих действий в компонентах сообщений (контекстное меню, просмотры, ответ)
|
|
3
|
+
*
|
|
4
|
+
* Предназначен для элементов ленты (`TextMessage`, `ImageMessage`, `VideoMessage`, `FileMessage`, `AudioMessage`).
|
|
5
|
+
* Централизует управление состоянием кнопки меню/контекстного меню и единообразно эмитит события наружу.
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* const { isOpenMenu, toggleMenu, openMenu, menuStyle, menuRef, menuAnchorRef } = useMessageActions(...)
|
|
9
|
+
* // <button @click="toggleMenu">
|
|
10
|
+
* // <MessageReactions @menu="openMenu" />
|
|
11
|
+
* // <Teleport to="body"><ContextMenu v-if="isOpenMenu" ref="menuRef" :style="menuStyle" /></Teleport>
|
|
6
12
|
*/
|
|
13
|
+
import { type ComponentPublicInstance } from 'vue';
|
|
14
|
+
import { type MenuTriggerRect } from './calculateMessageMenuPosition';
|
|
7
15
|
type ActionPayload = {
|
|
8
16
|
messageId: string;
|
|
9
17
|
type: string;
|
|
10
18
|
} & Record<string, unknown>;
|
|
11
|
-
/**
|
|
12
|
-
* Тип эмиттера событий компонентов сообщений
|
|
13
|
-
* @typedef EmitFn
|
|
14
|
-
* @param {'action' | 'reply'} event - Имя события
|
|
15
|
-
* @param {ActionPayload | string} payload - Данные события
|
|
16
|
-
*/
|
|
17
19
|
type EmitFn = (event: 'action' | 'reply', payload: ActionPayload | string) => void;
|
|
18
|
-
/**
|
|
19
|
-
* Минимально необходимая структура сообщения для работы composable
|
|
20
|
-
* @interface MessageWithMeta
|
|
21
|
-
* @property {string} messageId - Идентификатор сообщения
|
|
22
|
-
* @property {unknown} [actions] - Описание доступных действий (передается в `ContextMenu`)
|
|
23
|
-
*/
|
|
24
20
|
export interface MessageWithMeta {
|
|
25
21
|
messageId: string;
|
|
26
|
-
actions?: unknown;
|
|
27
22
|
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
* @returns {import('vue').Ref<boolean>} returns.isOpenMenu - Открыт ли контекстное меню
|
|
40
|
-
* @returns {import('vue').Ref<boolean>} returns.buttonMenuVisible - Видна ли кнопка вызова меню
|
|
41
|
-
* @returns {Function} returns.showMenu - Показать кнопку меню
|
|
42
|
-
* @returns {Function} returns.hideMenu - Скрыть кнопку и закрыть меню
|
|
43
|
-
* @returns {Function} returns.clickAction - Обработчик клика по пункту контекстного меню
|
|
44
|
-
* @returns {Function} returns.viewsAction - Обработчик клика по просмотрам
|
|
45
|
-
* @returns {Function} returns.handleClickReplied - Эмит события ответа по `replyMessageId`
|
|
46
|
-
*/
|
|
47
|
-
export declare const useMessageActions: <T extends MessageWithMeta>(message: T, emit: EmitFn) => {
|
|
23
|
+
type UseMessageActionsOptions = {
|
|
24
|
+
onReply?: () => void;
|
|
25
|
+
onEdit?: () => void;
|
|
26
|
+
};
|
|
27
|
+
/** Payload от MessageReactions @menu или клик по кнопке */
|
|
28
|
+
export type OpenMessageMenuSource = Event | {
|
|
29
|
+
event?: Event;
|
|
30
|
+
triggerRect?: MenuTriggerRect;
|
|
31
|
+
messageId?: string | number;
|
|
32
|
+
} | MenuTriggerRect | undefined;
|
|
33
|
+
export declare const useMessageActions: <T extends MessageWithMeta>(message: T, emit: EmitFn, options?: UseMessageActionsOptions) => {
|
|
48
34
|
isOpenMenu: import("vue").Ref<boolean, boolean>;
|
|
49
35
|
buttonMenuVisible: import("vue").Ref<boolean, boolean>;
|
|
36
|
+
menuAnchorRef: import("vue").Ref<HTMLElement | null, HTMLElement | null>;
|
|
37
|
+
menuRef: import("vue").Ref<HTMLElement | ComponentPublicInstance | null, HTMLElement | ComponentPublicInstance | null>;
|
|
38
|
+
menuStyle: import("vue").Ref<Record<string, string>, Record<string, string>>;
|
|
39
|
+
menuTheme: import("vue").ComputedRef<string>;
|
|
50
40
|
showMenu: () => void;
|
|
51
|
-
hideMenu: () => void;
|
|
52
|
-
|
|
41
|
+
hideMenu: (event?: MouseEvent) => void;
|
|
42
|
+
openMenu: (source?: OpenMessageMenuSource) => void;
|
|
43
|
+
toggleMenu: (event?: Event) => void;
|
|
44
|
+
onMenuMouseEnter: () => void;
|
|
45
|
+
onMenuMouseLeave: () => void;
|
|
46
|
+
clickAction: (action: Record<string, unknown>) => Promise<void>;
|
|
53
47
|
viewsAction: () => void;
|
|
54
48
|
handleClickReplied: (replyMessageId: string) => void;
|
|
55
49
|
};
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type MaybeRefOrGetter } from 'vue';
|
|
2
|
+
import type { IFeedMessageMenuAction, MessageMenuActionContext } from '@/types';
|
|
3
|
+
/**
|
|
4
|
+
* Пункты контекстного меню сообщения из Feed (`messageMenuActions`)
|
|
5
|
+
* или дефолт: Ответить / Редактировать / Удалить.
|
|
6
|
+
* `disabled` может быть функцией от сообщения — резолвится здесь.
|
|
7
|
+
*/
|
|
8
|
+
export declare function useMessageMenuActions(message?: MaybeRefOrGetter<MessageMenuActionContext>): {
|
|
9
|
+
menuActions: import("vue").ComputedRef<IFeedMessageMenuAction[]>;
|
|
10
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { Edit } from '@/types';
|
|
2
|
+
export declare function useStartEdit(chatAppId: string): {
|
|
3
|
+
startEdit: (edit: Edit) => void;
|
|
4
|
+
};
|
|
5
|
+
export declare function hideEditPreview(chatAppId: string): void;
|
|
6
|
+
export declare function showEditPreview(chatAppId: string): void;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Reply } from '@/types';
|
|
1
|
+
import { Edit, Reply } from '@/types';
|
|
2
2
|
/**
|
|
3
3
|
* Структура загруженного файла
|
|
4
4
|
* @interface UploadedFile
|
|
@@ -32,6 +32,8 @@ interface UploadedFile {
|
|
|
32
32
|
* @returns {Function} returns.resetMessageFile - Удалить прикрепленный файл
|
|
33
33
|
* @returns {Function} returns.setReply - Установить ответ на сообщение
|
|
34
34
|
* @returns {Function} returns.resetReply - Удалить ответ на сообщение
|
|
35
|
+
* @returns {Function} returns.setEdit - Установить редактируемое сообщение
|
|
36
|
+
* @returns {Function} returns.resetEdit - Сбросить режим редактирования
|
|
35
37
|
* @returns {Function} returns.setForceSendMessage - Установить флаг принудительной отправки
|
|
36
38
|
* @returns {Function} returns.setRecordingMessage - Установить флаг записи
|
|
37
39
|
*
|
|
@@ -93,6 +95,11 @@ export declare const useMessageDraft: (outId: string) => {
|
|
|
93
95
|
callDuration?: string | undefined;
|
|
94
96
|
isMissedCall?: boolean | undefined;
|
|
95
97
|
} | undefined;
|
|
98
|
+
edit?: {
|
|
99
|
+
messageId: string;
|
|
100
|
+
type: string;
|
|
101
|
+
text?: string | undefined;
|
|
102
|
+
} | undefined;
|
|
96
103
|
forceSend: boolean;
|
|
97
104
|
isRecording: boolean;
|
|
98
105
|
};
|
|
@@ -102,6 +109,8 @@ export declare const useMessageDraft: (outId: string) => {
|
|
|
102
109
|
setMessageText: (text: string) => void;
|
|
103
110
|
setReply: (reply: Reply) => void;
|
|
104
111
|
resetReply: () => void;
|
|
112
|
+
setEdit: (edit: Edit) => void;
|
|
113
|
+
resetEdit: () => void;
|
|
105
114
|
setForceSendMessage: (val: boolean) => void;
|
|
106
115
|
setRecordingMessage: (val: boolean) => void;
|
|
107
116
|
};
|
|
@@ -1,11 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Типы для данных сообщений
|
|
3
3
|
*/
|
|
4
|
-
export interface MessageAction {
|
|
5
|
-
action: string;
|
|
6
|
-
title: string;
|
|
7
|
-
icon?: string;
|
|
8
|
-
}
|
|
9
4
|
export interface MessageReply {
|
|
10
5
|
messageId: string | number;
|
|
11
6
|
type: string;
|
|
@@ -55,7 +50,6 @@ export interface Message {
|
|
|
55
50
|
filename?: string;
|
|
56
51
|
alt?: string;
|
|
57
52
|
views?: number;
|
|
58
|
-
actions?: MessageAction[];
|
|
59
53
|
reply?: MessageReply;
|
|
60
54
|
embed?: MessageEmbed;
|
|
61
55
|
linkPreview?: MessageLinkPreview;
|
|
@@ -21,4 +21,9 @@ export const en: {
|
|
|
21
21
|
'component.TextFormatToolbar.Code': string;
|
|
22
22
|
'component.TextFormatToolbar.Quote': string;
|
|
23
23
|
'component.TextMessage.sendSmsInvite': string;
|
|
24
|
+
'component.TextMessage.edited': string;
|
|
25
|
+
'component.ConfirmDeleteMessage.title': string;
|
|
26
|
+
'component.ConfirmDeleteMessage.delete': string;
|
|
27
|
+
'component.ConfirmDeleteMessage.cancel': string;
|
|
28
|
+
'component.DeletedMessageContent.text': string;
|
|
24
29
|
};
|
|
@@ -21,4 +21,9 @@ export const ru: {
|
|
|
21
21
|
'component.TextFormatToolbar.Code': string;
|
|
22
22
|
'component.TextFormatToolbar.Quote': string;
|
|
23
23
|
'component.TextMessage.sendSmsInvite': string;
|
|
24
|
+
'component.TextMessage.edited': string;
|
|
25
|
+
'component.ConfirmDeleteMessage.title': string;
|
|
26
|
+
'component.ConfirmDeleteMessage.delete': string;
|
|
27
|
+
'component.ConfirmDeleteMessage.cancel': string;
|
|
28
|
+
'component.DeletedMessageContent.text': string;
|
|
24
29
|
};
|
package/dist/types/main.d.ts
CHANGED
|
@@ -2,5 +2,6 @@ import './components/2_feed_elements/StickerMessage/utils/suppress-lit-warning';
|
|
|
2
2
|
import 'primeicons/primeicons.css';
|
|
3
3
|
import './themes/index.scss';
|
|
4
4
|
import '@fontsource/inter/700';
|
|
5
|
+
import '@fontsource/montserrat/600';
|
|
5
6
|
import '@fontsource/open-sans/400';
|
|
6
7
|
import '@fontsource/open-sans/600';
|