@mobilon-dev/chotto 0.3.84 → 0.3.85
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 +3 -2
- package/dist/components/1_atoms/ContactContextMenu/ContactContextMenu.vue2.js +3 -2
- package/dist/components/1_atoms/EmojiGlyph/EmojiGlyph.vue.js +38 -0
- package/dist/components/1_atoms/EmojiGlyph/EmojiGlyph.vue2.js +4 -0
- package/dist/components/1_atoms/Tooltip/Tooltip.vue.js +1 -1
- package/dist/components/1_atoms/Tooltip/Tooltip.vue2.js +49 -36
- package/dist/components/1_icons/CloseIcon.vue.js +21 -0
- package/dist/components/2_blocks/FeedSearch/FeedSearch.vue2.js +10 -9
- package/dist/components/2_chatinput_elements/ButtonCommandsSelector/ButtonCommandsSelector.vue2.js +8 -7
- package/dist/components/2_chatinput_elements/ButtonEmojiPicker/ButtonEmojiPicker.vue.js +2 -2
- package/dist/components/2_chatinput_elements/ButtonEmojiPicker/ButtonEmojiPicker.vue2.js +48 -37
- package/dist/components/2_chatinput_elements/ButtonTemplateSelector/ButtonTemplateSelector.vue2.js +3 -2
- package/dist/components/2_chatinput_elements/ButtonWabaTemplateSelector/ButtonWabaTemplateSelector.vue.js +7 -6
- package/dist/components/2_chatinput_elements/FilePreview/FilePreview.vue2.js +3 -2
- package/dist/components/2_chatinput_elements/FileUploader/FileUploader.vue2.js +3 -2
- package/dist/components/2_chatinput_elements/StickerPicker/StickerPicker.vue2.js +3 -2
- package/dist/components/2_chatinput_elements/TemplateSelector/TemplateSelector.vue.js +27 -26
- package/dist/components/2_chatinput_elements/TextFormatToolbar/TextFormatToolbar.vue2.js +3 -2
- package/dist/components/2_chatinput_elements/WABAAttachmentSection/WABAAttachmentSection.vue2.js +3 -2
- package/dist/components/2_chatlist_elements/ChatItem/ChatItem.vue2.js +3 -2
- package/dist/components/2_elements/AudioRecorder/AudioRecorder.vue2.js +3 -2
- package/dist/components/2_elements/ChannelSelector/ChannelSelector.vue.js +6 -5
- package/dist/components/2_elements/ThemeMode/ThemeMode.vue.js +10 -9
- package/dist/components/2_elements/VideoRecorder/VideoRecorder.vue2.js +3 -2
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue2.js +169 -143
- package/dist/components/2_feed_elements/BaseReplyMessage/BaseReplyMessage.vue.js +4 -4
- package/dist/components/2_feed_elements/BaseReplyMessage/BaseReplyMessage.vue2.js +33 -32
- package/dist/components/2_feed_elements/CallMessage/CallMessage.vue2.js +8 -2
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue.js +3 -3
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue2.js +134 -108
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue2.js +116 -97
- package/dist/components/2_feed_elements/MessageKeyboard/MessageKeyboard.vue2.js +3 -2
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue.js +2 -2
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue2.js +232 -113
- package/dist/components/2_feed_elements/MessageReactions/composables/usePositioning.js +77 -62
- package/dist/components/2_feed_elements/MessageReactions/composables/useReactions.js +62 -20
- package/dist/components/2_feed_elements/MessageReactions/composables/useReactionsPanel.js +91 -69
- package/dist/components/2_feed_elements/MessageReactions/composables/useReactionsState.js +46 -22
- package/dist/components/2_feed_elements/MessageReactions/icons/ExpandReactionsIcon.vue.js +21 -0
- package/dist/components/2_feed_elements/MessageReactions/icons/ReplyIcon.vue.js +21 -0
- package/dist/components/2_feed_elements/MessageReactions/utils/quickReactions.js +2 -8
- package/dist/components/2_feed_elements/MessageReactions/utils/reactionTooltip.js +39 -0
- package/dist/components/2_feed_elements/MissedCallMessage/MissedCallMessage.vue2.js +26 -20
- package/dist/components/2_feed_elements/ReplyAudioMessage/ReplyAudioMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/ReplyAudioMessage/ReplyAudioMessage.vue2.js +27 -18
- package/dist/components/2_feed_elements/ReplyCallMessage/ReplyCallMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/ReplyCallMessage/ReplyCallMessage.vue2.js +16 -15
- package/dist/components/2_feed_elements/ReplyFileMessage/ReplyFileMessage.vue.js +3 -3
- package/dist/components/2_feed_elements/ReplyFileMessage/ReplyFileMessage.vue2.js +27 -18
- package/dist/components/2_feed_elements/ReplyImageMessage/ReplyImageMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/ReplyImageMessage/ReplyImageMessage.vue2.js +16 -12
- package/dist/components/2_feed_elements/ReplyStickerMessage/ReplyStickerMessage.vue.js +4 -4
- package/dist/components/2_feed_elements/ReplyStickerMessage/ReplyStickerMessage.vue2.js +74 -65
- package/dist/components/2_feed_elements/ReplyTextMessage/ReplyTextMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/ReplyTextMessage/ReplyTextMessage.vue2.js +20 -11
- package/dist/components/2_feed_elements/ReplyVideoMessage/ReplyVideoMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/ReplyVideoMessage/ReplyVideoMessage.vue2.js +13 -9
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue.js +4 -4
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue2.js +74 -55
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue.js +4 -4
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue2.js +102 -76
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue2.js +74 -55
- package/dist/components/3_compounds/ChatInput/ChatInput.vue.js +2 -2
- package/dist/components/3_compounds/ChatInput/ChatInput.vue2.js +99 -82
- package/dist/components/3_compounds/Feed/Feed.vue.js +3 -3
- package/dist/components/3_compounds/Feed/Feed.vue2.js +159 -139
- package/dist/components/3_compounds/Feed/composables/useFeedReply.js +22 -25
- package/dist/functions/renderAppleEmojis.js +92 -0
- package/dist/hooks/messages/buildReplyPayload.js +14 -0
- package/dist/hooks/messages/useMessageLinks.js +60 -50
- package/dist/hooks/messages/useStartReply.js +29 -0
- package/dist/hooks/useEmojiNative.js +19 -0
- package/dist/index.js +130 -122
- 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 +20 -18
- package/dist/types/components/1_atoms/EmojiGlyph/EmojiGlyph.vue.d.ts +12 -0
- package/dist/types/components/1_atoms/Tooltip/stories/Tooltip.stories.d.ts +3 -0
- package/dist/types/components/1_icons/CloseIcon.vue.d.ts +2 -0
- package/dist/types/components/2_chatinput_elements/ButtonEmojiPicker/ButtonEmojiPicker.vue.d.ts +9 -1
- package/dist/types/components/2_feed_elements/AudioMessage/AudioMessage.vue.d.ts +29 -0
- package/dist/types/components/2_feed_elements/AudioMessage/styles/types.d.ts +24 -16
- package/dist/types/components/2_feed_elements/BaseReplyMessage/styles/types.d.ts +8 -4
- package/dist/types/components/2_feed_elements/FileMessage/FileMessage.vue.d.ts +29 -0
- package/dist/types/components/2_feed_elements/FileMessage/styles/types.d.ts +20 -0
- package/dist/types/components/2_feed_elements/ImageMessage/ImageMessage.vue.d.ts +29 -0
- package/dist/types/components/2_feed_elements/ImageMessage/styles/types.d.ts +2 -0
- package/dist/types/components/2_feed_elements/MessageReactions/MessageReactions.vue.d.ts +64 -1
- package/dist/types/components/2_feed_elements/MessageReactions/composables/index.d.ts +2 -2
- package/dist/types/components/2_feed_elements/MessageReactions/composables/usePositioning.d.ts +11 -1
- package/dist/types/components/2_feed_elements/MessageReactions/composables/useReactions.d.ts +20 -12
- package/dist/types/components/2_feed_elements/MessageReactions/composables/useReactionsPanel.d.ts +3 -3
- package/dist/types/components/2_feed_elements/MessageReactions/composables/useReactionsState.d.ts +13 -22
- package/dist/types/components/2_feed_elements/MessageReactions/icons/ExpandReactionsIcon.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/MessageReactions/icons/ReplyIcon.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/MessageReactions/styles/types.d.ts +14 -74
- package/dist/types/components/2_feed_elements/MessageReactions/utils/quickReactions.d.ts +1 -1
- package/dist/types/components/2_feed_elements/MessageReactions/utils/reactionTooltip.d.ts +14 -0
- package/dist/types/components/2_feed_elements/ReplyAudioMessage/styles/types.d.ts +6 -0
- package/dist/types/components/2_feed_elements/ReplyCallMessage/styles/types.d.ts +6 -0
- package/dist/types/components/2_feed_elements/ReplyFileMessage/styles/types.d.ts +6 -0
- package/dist/types/components/2_feed_elements/ReplyImageMessage/styles/types.d.ts +6 -0
- package/dist/types/components/2_feed_elements/ReplyStickerMessage/styles/types.d.ts +6 -0
- package/dist/types/components/2_feed_elements/ReplyTextMessage/styles/types.d.ts +4 -0
- package/dist/types/components/2_feed_elements/ReplyVideoMessage/styles/types.d.ts +6 -0
- package/dist/types/components/2_feed_elements/StickerMessage/StickerMessage.vue.d.ts +29 -0
- package/dist/types/components/2_feed_elements/TextMessage/TextMessage.vue.d.ts +29 -0
- package/dist/types/components/2_feed_elements/TextMessage/styles/types.d.ts +22 -0
- package/dist/types/components/2_feed_elements/VideoMessage/VideoMessage.vue.d.ts +29 -0
- package/dist/types/components/2_feed_elements/types/messages.d.ts +11 -6
- package/dist/types/components/3_compounds/ChatInput/styles/types.d.ts +2 -0
- package/dist/types/components/3_compounds/Feed/Feed.vue.d.ts +33 -0
- package/dist/types/functions/renderAppleEmojis.d.ts +16 -0
- package/dist/types/hooks/index.d.ts +1 -0
- package/dist/types/hooks/messages/buildReplyPayload.d.ts +11 -0
- package/dist/types/hooks/messages/index.d.ts +2 -0
- package/dist/types/hooks/messages/useStartReply.d.ts +6 -0
- package/dist/types/hooks/useEmojiNative.d.ts +9 -0
- package/package.json +1 -1
|
@@ -1477,8 +1477,9 @@ export declare const messages: ({
|
|
|
1477
1477
|
reactions: {
|
|
1478
1478
|
items: {
|
|
1479
1479
|
key: string;
|
|
1480
|
-
|
|
1481
|
-
|
|
1480
|
+
userId: string;
|
|
1481
|
+
name: string;
|
|
1482
|
+
date: number;
|
|
1482
1483
|
}[];
|
|
1483
1484
|
meta?: undefined;
|
|
1484
1485
|
};
|
|
@@ -1522,8 +1523,9 @@ export declare const messages: ({
|
|
|
1522
1523
|
reactions: {
|
|
1523
1524
|
items: {
|
|
1524
1525
|
key: string;
|
|
1525
|
-
|
|
1526
|
-
|
|
1526
|
+
userId: string;
|
|
1527
|
+
name: string;
|
|
1528
|
+
date: number;
|
|
1527
1529
|
}[];
|
|
1528
1530
|
meta: {
|
|
1529
1531
|
mode: string;
|
|
@@ -1610,8 +1612,9 @@ export declare const messages: ({
|
|
|
1610
1612
|
reactions: {
|
|
1611
1613
|
items: {
|
|
1612
1614
|
key: string;
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
+
userId: string;
|
|
1616
|
+
name: string;
|
|
1617
|
+
date: number;
|
|
1615
1618
|
}[];
|
|
1616
1619
|
meta: {
|
|
1617
1620
|
mode: string;
|
|
@@ -1809,8 +1812,9 @@ export declare const messages: ({
|
|
|
1809
1812
|
reactions: {
|
|
1810
1813
|
items: {
|
|
1811
1814
|
key: string;
|
|
1812
|
-
|
|
1813
|
-
|
|
1815
|
+
userId: string;
|
|
1816
|
+
name: string;
|
|
1817
|
+
date: number;
|
|
1814
1818
|
}[];
|
|
1815
1819
|
meta: {
|
|
1816
1820
|
mode: string;
|
|
@@ -1892,15 +1896,12 @@ export declare const messages: ({
|
|
|
1892
1896
|
subText: string;
|
|
1893
1897
|
avatar: string;
|
|
1894
1898
|
reactions: {
|
|
1895
|
-
items:
|
|
1896
|
-
key: string;
|
|
1897
|
-
count: number;
|
|
1898
|
-
reactedByMe?: undefined;
|
|
1899
|
-
} | {
|
|
1899
|
+
items: {
|
|
1900
1900
|
key: string;
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1901
|
+
userId: string;
|
|
1902
|
+
name: string;
|
|
1903
|
+
date: number;
|
|
1904
|
+
}[];
|
|
1904
1905
|
meta: {
|
|
1905
1906
|
mode: string;
|
|
1906
1907
|
};
|
|
@@ -1987,8 +1988,9 @@ export declare const messages: ({
|
|
|
1987
1988
|
reactions: {
|
|
1988
1989
|
items: {
|
|
1989
1990
|
key: string;
|
|
1990
|
-
|
|
1991
|
-
|
|
1991
|
+
userId: string;
|
|
1992
|
+
name: string;
|
|
1993
|
+
date: number;
|
|
1992
1994
|
}[];
|
|
1993
1995
|
meta: {
|
|
1994
1996
|
mode: string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
2
|
+
emoji: {
|
|
3
|
+
type: StringConstructor;
|
|
4
|
+
required: true;
|
|
5
|
+
};
|
|
6
|
+
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
|
|
7
|
+
emoji: {
|
|
8
|
+
type: StringConstructor;
|
|
9
|
+
required: true;
|
|
10
|
+
};
|
|
11
|
+
}>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
12
|
+
export default _default;
|
|
@@ -9,6 +9,9 @@ export declare const Bottom: Story;
|
|
|
9
9
|
export declare const Left: Story;
|
|
10
10
|
export declare const Right: Story;
|
|
11
11
|
export declare const BottomLeft: Story;
|
|
12
|
+
export declare const BottomRight: Story;
|
|
13
|
+
export declare const TopLeft: Story;
|
|
14
|
+
export declare const TopRight: Story;
|
|
12
15
|
export declare const WithIcon: Story;
|
|
13
16
|
export declare const WithButton: Story;
|
|
14
17
|
export declare const LongText: Story;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
declare const _default: import("vue").DefineComponent<{}, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
2
|
+
export default _default;
|
package/dist/types/components/2_chatinput_elements/ButtonEmojiPicker/ButtonEmojiPicker.vue.d.ts
CHANGED
|
@@ -9,6 +9,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
9
9
|
default: string;
|
|
10
10
|
validator: (value: string) => boolean;
|
|
11
11
|
};
|
|
12
|
+
/**
|
|
13
|
+
* true — системные эмодзи; false — 3D (Apple) в пикере, инпуте и ленте.
|
|
14
|
+
* Значение пишется в общий store чата (useEmojiNative).
|
|
15
|
+
*/
|
|
12
16
|
native: {
|
|
13
17
|
type: BooleanConstructor;
|
|
14
18
|
default: boolean;
|
|
@@ -23,13 +27,17 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
23
27
|
default: string;
|
|
24
28
|
validator: (value: string) => boolean;
|
|
25
29
|
};
|
|
30
|
+
/**
|
|
31
|
+
* true — системные эмодзи; false — 3D (Apple) в пикере, инпуте и ленте.
|
|
32
|
+
* Значение пишется в общий store чата (useEmojiNative).
|
|
33
|
+
*/
|
|
26
34
|
native: {
|
|
27
35
|
type: BooleanConstructor;
|
|
28
36
|
default: boolean;
|
|
29
37
|
};
|
|
30
38
|
}>> & Readonly<{}>, {
|
|
39
|
+
native: boolean;
|
|
31
40
|
mode: string;
|
|
32
41
|
state: string;
|
|
33
|
-
native: boolean;
|
|
34
42
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
35
43
|
export default _default;
|
|
@@ -16,6 +16,19 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
16
16
|
type: BooleanConstructor;
|
|
17
17
|
default: boolean;
|
|
18
18
|
};
|
|
19
|
+
reactionsMode: {
|
|
20
|
+
type: () => "single" | "multi";
|
|
21
|
+
default: string;
|
|
22
|
+
validator: (value: string) => boolean;
|
|
23
|
+
};
|
|
24
|
+
currentUserId: {
|
|
25
|
+
type: () => string | number | undefined;
|
|
26
|
+
default: undefined;
|
|
27
|
+
};
|
|
28
|
+
reactionUserNames: {
|
|
29
|
+
type: () => Record<string, string>;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
19
32
|
subtextTooltipData: {
|
|
20
33
|
type: () => Record<string, string>;
|
|
21
34
|
required: false;
|
|
@@ -47,6 +60,19 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
47
60
|
type: BooleanConstructor;
|
|
48
61
|
default: boolean;
|
|
49
62
|
};
|
|
63
|
+
reactionsMode: {
|
|
64
|
+
type: () => "single" | "multi";
|
|
65
|
+
default: string;
|
|
66
|
+
validator: (value: string) => boolean;
|
|
67
|
+
};
|
|
68
|
+
currentUserId: {
|
|
69
|
+
type: () => string | number | undefined;
|
|
70
|
+
default: undefined;
|
|
71
|
+
};
|
|
72
|
+
reactionUserNames: {
|
|
73
|
+
type: () => Record<string, string>;
|
|
74
|
+
default: undefined;
|
|
75
|
+
};
|
|
50
76
|
subtextTooltipData: {
|
|
51
77
|
type: () => Record<string, string>;
|
|
52
78
|
required: false;
|
|
@@ -63,9 +89,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
63
89
|
"onSms-invite"?: ((...args: any[]) => any) | undefined;
|
|
64
90
|
}>, {
|
|
65
91
|
channel: string;
|
|
92
|
+
currentUserId: string | number | undefined;
|
|
93
|
+
reactionUserNames: Record<string, string>;
|
|
66
94
|
applyStyle: Function;
|
|
67
95
|
isFirstInSeries: boolean;
|
|
68
96
|
reactionsEnabled: boolean;
|
|
97
|
+
reactionsMode: "single" | "multi";
|
|
69
98
|
subtextTooltipData: Record<string, string>;
|
|
70
99
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
71
100
|
export default _default;
|
|
@@ -230,8 +230,22 @@ export interface AudioMessageThemeCSSVariables {
|
|
|
230
230
|
'--chotto-audiomessage-avatar-min-height': string;
|
|
231
231
|
/** Скругление аватара */
|
|
232
232
|
'--chotto-audiomessage-avatar-border-radius': string;
|
|
233
|
-
/** Колонки грида
|
|
234
|
-
'--chotto-audiomessage-
|
|
233
|
+
/** Колонки грида футера */
|
|
234
|
+
'--chotto-audiomessage-footer-grid-column': string;
|
|
235
|
+
/** Отображение футера */
|
|
236
|
+
'--chotto-audiomessage-footer-display': string;
|
|
237
|
+
/** Выравнивание элементов футера по поперечной оси */
|
|
238
|
+
'--chotto-audiomessage-footer-align-items': string;
|
|
239
|
+
/** Выравнивание элементов футера по главной оси */
|
|
240
|
+
'--chotto-audiomessage-footer-justify-content': string;
|
|
241
|
+
/** Промежуток между элементами футера */
|
|
242
|
+
'--chotto-audiomessage-footer-column-gap': string;
|
|
243
|
+
/** Отступ сверху футера */
|
|
244
|
+
'--chotto-audiomessage-footer-margin-top': string;
|
|
245
|
+
/** Отступ справа футера */
|
|
246
|
+
'--chotto-audiomessage-footer-margin-right': string;
|
|
247
|
+
/** Доп. отступ сверху футера при наличии реакций */
|
|
248
|
+
'--chotto-audiomessage-footer-reactions-extra-margin-top': string;
|
|
235
249
|
/** Отображение инфо-контейнера */
|
|
236
250
|
'--chotto-audiomessage-info-container-display': string;
|
|
237
251
|
/** Выравнивание элементов инфо-контейнера */
|
|
@@ -240,12 +254,12 @@ export interface AudioMessageThemeCSSVariables {
|
|
|
240
254
|
'--chotto-audiomessage-info-container-justify-content': string;
|
|
241
255
|
/** Промежуток между элементами инфо-контейнера */
|
|
242
256
|
'--chotto-audiomessage-info-container-column-gap': string;
|
|
243
|
-
/** Отступ справа инфо-контейнера */
|
|
244
|
-
'--chotto-audiomessage-info-container-margin-right': string;
|
|
245
|
-
/** Отступ сверху инфо-контейнера */
|
|
246
|
-
'--chotto-audiomessage-info-container-margin-top': string;
|
|
247
257
|
/** События указателя инфо-контейнера */
|
|
248
258
|
'--chotto-audiomessage-info-container-pointer-events': string;
|
|
259
|
+
/** Растягивание инфо-контейнера в футере */
|
|
260
|
+
'--chotto-audiomessage-info-container-flex': string;
|
|
261
|
+
/** Минимальная ширина инфо-контейнера */
|
|
262
|
+
'--chotto-audiomessage-info-container-min-width': string;
|
|
249
263
|
/** Отображение контейнера кнопок "Текст / Резюме" */
|
|
250
264
|
'--chotto-audiomessage-actions-display': string;
|
|
251
265
|
/** Выравнивание элементов контейнера кнопок */
|
|
@@ -386,20 +400,14 @@ export interface AudioMessageThemeCSSVariables {
|
|
|
386
400
|
'--chotto-audiomessage-transcript-delimiter-height': string;
|
|
387
401
|
/** Скругление разделителя */
|
|
388
402
|
'--chotto-audiomessage-transcript-delimiter-border-radius': string;
|
|
389
|
-
/**
|
|
390
|
-
'--chotto-audiomessage-reactions-
|
|
391
|
-
/** Отступ сверху реакций */
|
|
392
|
-
'--chotto-audiomessage-reactions-margin-top': string;
|
|
393
|
-
/** Отступ снизу реакций */
|
|
394
|
-
'--chotto-audiomessage-reactions-margin-bottom': string;
|
|
403
|
+
/** Растягивание блока реакций в футере */
|
|
404
|
+
'--chotto-audiomessage-reactions-flex': string;
|
|
395
405
|
/** Перенос строк реакций */
|
|
396
406
|
'--chotto-audiomessage-reactions-flex-wrap': string;
|
|
407
|
+
/** Минимальная ширина реакций */
|
|
408
|
+
'--chotto-audiomessage-reactions-min-width': string;
|
|
397
409
|
/** Максимальная ширина реакций */
|
|
398
410
|
'--chotto-audiomessage-reactions-max-width': string;
|
|
399
|
-
/** Внутренний отступ справа реакций */
|
|
400
|
-
'--chotto-audiomessage-reactions-padding-right': string;
|
|
401
|
-
/** Внутренний отступ снизу реакций */
|
|
402
|
-
'--chotto-audiomessage-reactions-padding-bottom': string;
|
|
403
411
|
/** Отображение общего контейнера лево/право */
|
|
404
412
|
'--chotto-audiomessage-left-right-display': string;
|
|
405
413
|
/** Шаблон колонок левой раскладки */
|
|
@@ -20,6 +20,10 @@ export interface BaseReplyMessageThemeCSSVariables {
|
|
|
20
20
|
'--chotto-basereplymessage-container-overflow': string;
|
|
21
21
|
/** Отступ снизу контейнера */
|
|
22
22
|
'--chotto-basereplymessage-container-margin-bottom': string;
|
|
23
|
+
/** Отступ справа контейнера */
|
|
24
|
+
'--chotto-basereplymessage-container-margin-right': string;
|
|
25
|
+
/** Цвет фона контейнера */
|
|
26
|
+
'--chotto-basereplymessage-container-background-color': string;
|
|
23
27
|
/** Контент псевдоэлемента перед контейнером */
|
|
24
28
|
'--chotto-basereplymessage-container-before-content': string;
|
|
25
29
|
/** Позиционирование псевдоэлемента */
|
|
@@ -32,6 +36,10 @@ export interface BaseReplyMessageThemeCSSVariables {
|
|
|
32
36
|
'--chotto-basereplymessage-container-before-width': string;
|
|
33
37
|
/** Высота псевдоэлемента */
|
|
34
38
|
'--chotto-basereplymessage-container-before-height': string;
|
|
39
|
+
/** Скругление верхнего левого угла псевдоэлемента */
|
|
40
|
+
'--chotto-basereplymessage-container-before-border-top-left-radius': string;
|
|
41
|
+
/** Скругление нижнего левого угла псевдоэлемента */
|
|
42
|
+
'--chotto-basereplymessage-container-before-border-bottom-left-radius': string;
|
|
35
43
|
/** Отображение кнопки сброса */
|
|
36
44
|
'--chotto-basereplymessage-reset-display': string;
|
|
37
45
|
/** Позиционирование кнопки сброса */
|
|
@@ -52,10 +60,6 @@ export interface BaseReplyMessageThemeCSSVariables {
|
|
|
52
60
|
'--chotto-basereplymessage-grid-padding': string;
|
|
53
61
|
/** Правый внутренний отступ блока ответа в инпуте */
|
|
54
62
|
'--chotto-basereplymessage-chat-input-reply-padding-right': string;
|
|
55
|
-
/** Граница блока ответа в инпуте */
|
|
56
|
-
'--chotto-basereplymessage-chat-input-reply-border': string;
|
|
57
|
-
/** Скругление блока ответа в инпуте */
|
|
58
|
-
'--chotto-basereplymessage-chat-input-reply-border-radius': string;
|
|
59
63
|
/** Перенос слов в блоке ответа в инпуте */
|
|
60
64
|
'--chotto-basereplymessage-chat-input-reply-word-break': string;
|
|
61
65
|
/** Отступ снизу блока ответа в инпуте */
|
|
@@ -16,6 +16,19 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
16
16
|
type: BooleanConstructor;
|
|
17
17
|
default: boolean;
|
|
18
18
|
};
|
|
19
|
+
reactionsMode: {
|
|
20
|
+
type: () => "single" | "multi";
|
|
21
|
+
default: string;
|
|
22
|
+
validator: (value: string) => boolean;
|
|
23
|
+
};
|
|
24
|
+
currentUserId: {
|
|
25
|
+
type: () => string | number | undefined;
|
|
26
|
+
default: undefined;
|
|
27
|
+
};
|
|
28
|
+
reactionUserNames: {
|
|
29
|
+
type: () => Record<string, string>;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
19
32
|
subtextTooltipData: {
|
|
20
33
|
type: () => Record<string, string>;
|
|
21
34
|
required: false;
|
|
@@ -47,6 +60,19 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
47
60
|
type: BooleanConstructor;
|
|
48
61
|
default: boolean;
|
|
49
62
|
};
|
|
63
|
+
reactionsMode: {
|
|
64
|
+
type: () => "single" | "multi";
|
|
65
|
+
default: string;
|
|
66
|
+
validator: (value: string) => boolean;
|
|
67
|
+
};
|
|
68
|
+
currentUserId: {
|
|
69
|
+
type: () => string | number | undefined;
|
|
70
|
+
default: undefined;
|
|
71
|
+
};
|
|
72
|
+
reactionUserNames: {
|
|
73
|
+
type: () => Record<string, string>;
|
|
74
|
+
default: undefined;
|
|
75
|
+
};
|
|
50
76
|
subtextTooltipData: {
|
|
51
77
|
type: () => Record<string, string>;
|
|
52
78
|
required: false;
|
|
@@ -63,9 +89,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
63
89
|
"onSms-invite"?: ((...args: any[]) => any) | undefined;
|
|
64
90
|
}>, {
|
|
65
91
|
channel: string;
|
|
92
|
+
currentUserId: string | number | undefined;
|
|
93
|
+
reactionUserNames: Record<string, string>;
|
|
66
94
|
applyStyle: Function;
|
|
67
95
|
isFirstInSeries: boolean;
|
|
68
96
|
reactionsEnabled: boolean;
|
|
97
|
+
reactionsMode: "single" | "multi";
|
|
69
98
|
subtextTooltipData: Record<string, string>;
|
|
70
99
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
71
100
|
export default _default;
|
|
@@ -114,6 +114,22 @@ export interface FileMessageThemeCSSVariables {
|
|
|
114
114
|
'--chotto-filemessage-filename-text-font-size': string;
|
|
115
115
|
/** Цвет имени файла */
|
|
116
116
|
'--chotto-filemessage-filename-text-color': string;
|
|
117
|
+
/** Отображение футера (реакции + время) */
|
|
118
|
+
'--chotto-filemessage-footer-display': string;
|
|
119
|
+
/** Выравнивание элементов футера по поперечной оси */
|
|
120
|
+
'--chotto-filemessage-footer-align-items': string;
|
|
121
|
+
/** Выравнивание элементов футера по главной оси */
|
|
122
|
+
'--chotto-filemessage-footer-justify-content': string;
|
|
123
|
+
/** Промежуток между элементами футера */
|
|
124
|
+
'--chotto-filemessage-footer-column-gap': string;
|
|
125
|
+
/** Отступ сверху футера */
|
|
126
|
+
'--chotto-filemessage-footer-margin-top': string;
|
|
127
|
+
/** Растягивание блока реакций в футере */
|
|
128
|
+
'--chotto-filemessage-reactions-flex': string;
|
|
129
|
+
/** Перенос реакций */
|
|
130
|
+
'--chotto-filemessage-reactions-flex-wrap': string;
|
|
131
|
+
/** Минимальная ширина блока реакций */
|
|
132
|
+
'--chotto-filemessage-reactions-min-width': string;
|
|
117
133
|
/** Отображение контейнера информации */
|
|
118
134
|
'--chotto-filemessage-info-container-display': string;
|
|
119
135
|
/** Выравнивание элементов контейнера информации */
|
|
@@ -122,6 +138,10 @@ export interface FileMessageThemeCSSVariables {
|
|
|
122
138
|
'--chotto-filemessage-info-container-justify-content': string;
|
|
123
139
|
/** Промежуток между элементами контейнера информации */
|
|
124
140
|
'--chotto-filemessage-info-container-column-gap': string;
|
|
141
|
+
/** Сжатие контейнера информации */
|
|
142
|
+
'--chotto-filemessage-info-container-flex-shrink': string;
|
|
143
|
+
/** Отступ слева у контейнера информации */
|
|
144
|
+
'--chotto-filemessage-info-container-margin-left': string;
|
|
125
145
|
/** Отступ снизу кнопки скачивания */
|
|
126
146
|
'--chotto-filemessage-download-button-margin-bottom': string;
|
|
127
147
|
/** Отступ слева кнопки скачивания */
|
|
@@ -16,6 +16,19 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
16
16
|
type: BooleanConstructor;
|
|
17
17
|
default: boolean;
|
|
18
18
|
};
|
|
19
|
+
reactionsMode: {
|
|
20
|
+
type: () => "single" | "multi";
|
|
21
|
+
default: string;
|
|
22
|
+
validator: (value: string) => boolean;
|
|
23
|
+
};
|
|
24
|
+
currentUserId: {
|
|
25
|
+
type: () => string | number | undefined;
|
|
26
|
+
default: undefined;
|
|
27
|
+
};
|
|
28
|
+
reactionUserNames: {
|
|
29
|
+
type: () => Record<string, string>;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
19
32
|
subtextTooltipData: {
|
|
20
33
|
type: () => Record<string, string>;
|
|
21
34
|
required: false;
|
|
@@ -47,6 +60,19 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
47
60
|
type: BooleanConstructor;
|
|
48
61
|
default: boolean;
|
|
49
62
|
};
|
|
63
|
+
reactionsMode: {
|
|
64
|
+
type: () => "single" | "multi";
|
|
65
|
+
default: string;
|
|
66
|
+
validator: (value: string) => boolean;
|
|
67
|
+
};
|
|
68
|
+
currentUserId: {
|
|
69
|
+
type: () => string | number | undefined;
|
|
70
|
+
default: undefined;
|
|
71
|
+
};
|
|
72
|
+
reactionUserNames: {
|
|
73
|
+
type: () => Record<string, string>;
|
|
74
|
+
default: undefined;
|
|
75
|
+
};
|
|
50
76
|
subtextTooltipData: {
|
|
51
77
|
type: () => Record<string, string>;
|
|
52
78
|
required: false;
|
|
@@ -63,9 +89,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
63
89
|
"onSms-invite"?: ((...args: any[]) => any) | undefined;
|
|
64
90
|
}>, {
|
|
65
91
|
channel: string;
|
|
92
|
+
currentUserId: string | number | undefined;
|
|
93
|
+
reactionUserNames: Record<string, string>;
|
|
66
94
|
applyStyle: Function;
|
|
67
95
|
isFirstInSeries: boolean;
|
|
68
96
|
reactionsEnabled: boolean;
|
|
97
|
+
reactionsMode: "single" | "multi";
|
|
69
98
|
subtextTooltipData: Record<string, string>;
|
|
70
99
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
71
100
|
export default _default;
|
|
@@ -358,6 +358,8 @@ export interface ImageMessageThemeCSSVariables {
|
|
|
358
358
|
'--chotto-imagemessage-right-context-menu-right': string;
|
|
359
359
|
/** Отступ контекстного меню справа сверху */
|
|
360
360
|
'--chotto-imagemessage-right-context-menu-margin-top': string;
|
|
361
|
+
/** Внешние отступы реакций */
|
|
362
|
+
'--chotto-imagemessage-reactions-margin': string;
|
|
361
363
|
/** Ширина изображения в модальном окне */
|
|
362
364
|
'--chotto-imagemessage-modal-image-width': string;
|
|
363
365
|
/** Высота изображения в модальном окне */
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import 'vue3-emoji-picker-ru/css';
|
|
2
|
-
import type { MessageReactions } from '@/types';
|
|
2
|
+
import type { MessageReactions, Reply } from '@/types';
|
|
3
|
+
import { type ReactionsMode } from './composables';
|
|
3
4
|
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
|
|
4
5
|
reactions: {
|
|
5
6
|
type: () => MessageReactions | undefined;
|
|
@@ -18,6 +19,34 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
18
19
|
type: BooleanConstructor;
|
|
19
20
|
default: boolean;
|
|
20
21
|
};
|
|
22
|
+
mode: {
|
|
23
|
+
type: () => ReactionsMode;
|
|
24
|
+
default: string;
|
|
25
|
+
validator: (value: string) => boolean;
|
|
26
|
+
};
|
|
27
|
+
/** Id текущего пользователя — для расчёта reactedByMe и локальных add/remove */
|
|
28
|
+
currentUserId: {
|
|
29
|
+
type: () => string | number | undefined;
|
|
30
|
+
default: undefined;
|
|
31
|
+
};
|
|
32
|
+
/** Имя текущего пользователя — для тултипа при локальном добавлении реакции */
|
|
33
|
+
currentUserName: {
|
|
34
|
+
type: StringConstructor;
|
|
35
|
+
default: undefined;
|
|
36
|
+
};
|
|
37
|
+
/** userId → имя (если в item нет name) */
|
|
38
|
+
reactionUserNames: {
|
|
39
|
+
type: () => Record<string, string>;
|
|
40
|
+
default: undefined;
|
|
41
|
+
};
|
|
42
|
+
reply: {
|
|
43
|
+
type: () => Reply | undefined;
|
|
44
|
+
default: undefined;
|
|
45
|
+
};
|
|
46
|
+
replyEnabled: {
|
|
47
|
+
type: BooleanConstructor;
|
|
48
|
+
default: boolean;
|
|
49
|
+
};
|
|
21
50
|
}>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
22
51
|
"toggle-reaction": (payload: {
|
|
23
52
|
messageId: string | number;
|
|
@@ -49,6 +78,34 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
49
78
|
type: BooleanConstructor;
|
|
50
79
|
default: boolean;
|
|
51
80
|
};
|
|
81
|
+
mode: {
|
|
82
|
+
type: () => ReactionsMode;
|
|
83
|
+
default: string;
|
|
84
|
+
validator: (value: string) => boolean;
|
|
85
|
+
};
|
|
86
|
+
/** Id текущего пользователя — для расчёта reactedByMe и локальных add/remove */
|
|
87
|
+
currentUserId: {
|
|
88
|
+
type: () => string | number | undefined;
|
|
89
|
+
default: undefined;
|
|
90
|
+
};
|
|
91
|
+
/** Имя текущего пользователя — для тултипа при локальном добавлении реакции */
|
|
92
|
+
currentUserName: {
|
|
93
|
+
type: StringConstructor;
|
|
94
|
+
default: undefined;
|
|
95
|
+
};
|
|
96
|
+
/** userId → имя (если в item нет name) */
|
|
97
|
+
reactionUserNames: {
|
|
98
|
+
type: () => Record<string, string>;
|
|
99
|
+
default: undefined;
|
|
100
|
+
};
|
|
101
|
+
reply: {
|
|
102
|
+
type: () => Reply | undefined;
|
|
103
|
+
default: undefined;
|
|
104
|
+
};
|
|
105
|
+
replyEnabled: {
|
|
106
|
+
type: BooleanConstructor;
|
|
107
|
+
default: boolean;
|
|
108
|
+
};
|
|
52
109
|
}>> & Readonly<{
|
|
53
110
|
"onToggle-reaction"?: ((payload: {
|
|
54
111
|
messageId: string | number;
|
|
@@ -63,8 +120,14 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
63
120
|
key: string;
|
|
64
121
|
}) => any) | undefined;
|
|
65
122
|
}>, {
|
|
123
|
+
reply: Reply | undefined;
|
|
124
|
+
mode: ReactionsMode;
|
|
66
125
|
reactions: MessageReactions | undefined;
|
|
67
126
|
readonly: boolean;
|
|
68
127
|
enabled: boolean;
|
|
128
|
+
currentUserId: string | number | undefined;
|
|
129
|
+
currentUserName: string;
|
|
130
|
+
reactionUserNames: Record<string, string>;
|
|
131
|
+
replyEnabled: boolean;
|
|
69
132
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
|
|
70
133
|
export default _default;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export { findFeedContainer, isRightMessage, calculatePanelPosition, calculateFixedPanelPosition, } from './usePositioning';
|
|
2
|
-
export { updateLocalReactionsAdd, updateLocalReactionsRemove, updateLocalReactionsToggle, } from './useReactions';
|
|
1
|
+
export { findFeedContainer, findMessageContent, isRightMessage, calculatePanelPosition, calculateFixedPanelPosition, calculatePickerPositionAboveQuickPanel, } from './usePositioning';
|
|
2
|
+
export { updateLocalReactionsAdd, updateLocalReactionsRemove, updateLocalReactionsToggle, updateLocalReactionsReplace, aggregateReactions, hasMyReaction, getMyReactionKey, sameUserId, type ReactionsMode, } from './useReactions';
|
|
3
3
|
export { useReactionsState } from './useReactionsState';
|
|
4
4
|
export { useReactionsPanel } from './useReactionsPanel';
|
package/dist/types/components/2_feed_elements/MessageReactions/composables/usePositioning.d.ts
CHANGED
|
@@ -2,15 +2,25 @@
|
|
|
2
2
|
* Находит ближайший feed-контейнер в DOM дереве
|
|
3
3
|
*/
|
|
4
4
|
export declare function findFeedContainer(element: HTMLElement | null): HTMLElement | null;
|
|
5
|
+
/**
|
|
6
|
+
* Находит контейнер содержимого сообщения (например, text-message__content)
|
|
7
|
+
*/
|
|
8
|
+
export declare function findMessageContent(element: HTMLElement | null): HTMLElement | null;
|
|
5
9
|
/**
|
|
6
10
|
* Определяет, является ли сообщение правым (outgoing)
|
|
7
11
|
*/
|
|
8
12
|
export declare function isRightMessage(element: HTMLElement | null): boolean;
|
|
9
13
|
/**
|
|
10
|
-
* Вычисляет позицию панели реакций
|
|
14
|
+
* Вычисляет позицию панели быстрых реакций в координатах viewport (position: fixed):
|
|
15
|
+
* по центру высоты, слева для правых сообщений и справа для левых.
|
|
16
|
+
* Fixed нужен, чтобы панель не обрезалась overflow ленты и могла перекрывать ChatList.
|
|
11
17
|
*/
|
|
12
18
|
export declare function calculatePanelPosition(panelElement: HTMLElement | null, buttonElement: HTMLElement | null, estimatedWidth?: number): Promise<Record<string, string>>;
|
|
13
19
|
/**
|
|
14
20
|
* Вычисляет позицию для fixed-элемента относительно viewport
|
|
15
21
|
*/
|
|
16
22
|
export declare function calculateFixedPanelPosition(panelElement: HTMLElement | null, buttonElement: HTMLElement | null, estimatedWidth?: number): Promise<Record<string, string>>;
|
|
23
|
+
/**
|
|
24
|
+
* Вычисляет позицию EmojiPicker над панелью быстрых реакций
|
|
25
|
+
*/
|
|
26
|
+
export declare function calculatePickerPositionAboveQuickPanel(pickerElement: HTMLElement | null, quickPanelElement: HTMLElement | null, messageElement: HTMLElement | null, estimatedWidth?: number): Promise<Record<string, string>>;
|
package/dist/types/components/2_feed_elements/MessageReactions/composables/useReactions.d.ts
CHANGED
|
@@ -1,19 +1,27 @@
|
|
|
1
|
-
import type { MessageReactions } from '@/types';
|
|
1
|
+
import type { MessageReactionChip, MessageReactions } from '@/types';
|
|
2
|
+
export type ReactionsMode = 'single' | 'multi';
|
|
3
|
+
export type ReactionsRef = {
|
|
4
|
+
value: MessageReactions | undefined;
|
|
5
|
+
};
|
|
6
|
+
export declare function sameUserId(a: string | number | undefined | null, b: string | number | undefined | null): boolean;
|
|
7
|
+
export declare function hasMyReaction(localReactions: ReactionsRef, key: string, currentUserId: string | number | undefined | null): boolean;
|
|
8
|
+
export declare function getMyReactionKey(localReactions: ReactionsRef, currentUserId: string | number | undefined | null): string | undefined;
|
|
9
|
+
/** Группирует event-list в чипы для UI */
|
|
10
|
+
export declare function aggregateReactions(reactions: MessageReactions | undefined, currentUserId: string | number | undefined | null): MessageReactionChip[];
|
|
2
11
|
/**
|
|
3
|
-
* Добавляет
|
|
12
|
+
* Добавляет реакцию текущего пользователя
|
|
4
13
|
*/
|
|
5
|
-
export declare function updateLocalReactionsAdd(localReactions:
|
|
6
|
-
value: MessageReactions | undefined;
|
|
7
|
-
}, key: string): void;
|
|
14
|
+
export declare function updateLocalReactionsAdd(localReactions: ReactionsRef, key: string, currentUserId: string | number, mode?: ReactionsMode, name?: string): void;
|
|
8
15
|
/**
|
|
9
|
-
* Удаляет
|
|
16
|
+
* Удаляет реакцию текущего пользователя по ключу
|
|
10
17
|
*/
|
|
11
|
-
export declare function updateLocalReactionsRemove(localReactions:
|
|
12
|
-
|
|
13
|
-
|
|
18
|
+
export declare function updateLocalReactionsRemove(localReactions: ReactionsRef, key: string, currentUserId: string | number): void;
|
|
19
|
+
/**
|
|
20
|
+
* В single-режиме заменяет свою текущую реакцию на новую.
|
|
21
|
+
* Возвращает ключ снятой реакции (если была).
|
|
22
|
+
*/
|
|
23
|
+
export declare function updateLocalReactionsReplace(localReactions: ReactionsRef, key: string, currentUserId: string | number, name?: string): string | undefined;
|
|
14
24
|
/**
|
|
15
25
|
* Переключает реакцию (добавляет, если нет, или удаляет, если есть)
|
|
16
26
|
*/
|
|
17
|
-
export declare function updateLocalReactionsToggle(localReactions:
|
|
18
|
-
value: MessageReactions | undefined;
|
|
19
|
-
}, key: string): void;
|
|
27
|
+
export declare function updateLocalReactionsToggle(localReactions: ReactionsRef, key: string, currentUserId: string | number, mode?: ReactionsMode, name?: string): void;
|
package/dist/types/components/2_feed_elements/MessageReactions/composables/useReactionsPanel.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { type Ref } from 'vue';
|
|
|
2
2
|
/**
|
|
3
3
|
* Композабл для управления панелями реакций (быстрые реакции и полный picker)
|
|
4
4
|
*/
|
|
5
|
-
export declare function useReactionsPanel(quickEmojis: Ref<readonly string[]>,
|
|
5
|
+
export declare function useReactionsPanel(quickEmojis: Ref<readonly string[]>, messageRef: Ref<HTMLElement | null>): {
|
|
6
6
|
isQuickReactionsOpen: Ref<boolean, boolean>;
|
|
7
7
|
isFullPickerOpen: Ref<boolean, boolean>;
|
|
8
8
|
pickerRef: Ref<HTMLElement | null, HTMLElement | null>;
|
|
@@ -13,11 +13,11 @@ export declare function useReactionsPanel(quickEmojis: Ref<readonly string[]>, a
|
|
|
13
13
|
closeQuickPanel: () => void;
|
|
14
14
|
openFullPicker: () => Promise<void>;
|
|
15
15
|
closeFullPicker: () => void;
|
|
16
|
+
handleMessageMouseEnter: () => void;
|
|
17
|
+
handleMessageMouseLeave: () => void;
|
|
16
18
|
handleQuickPanelMouseEnter: () => void;
|
|
17
19
|
handleQuickPanelMouseLeave: () => void;
|
|
18
20
|
handlePickerMouseEnter: () => void;
|
|
19
21
|
handlePickerMouseLeave: () => void;
|
|
20
|
-
handleButtonMouseEnter: () => void;
|
|
21
|
-
handleButtonMouseLeave: () => void;
|
|
22
22
|
handleClickOutside: (event: MouseEvent) => void;
|
|
23
23
|
};
|