@mobilon-dev/chotto 0.3.30 → 0.3.31
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/_virtual/_plugin-vue_export-helper.js +9 -0
- package/dist/chotto.css +1 -1
- package/dist/components/1_atoms/ButtonContextMenu/ButtonContextMenu.vue.js +7 -0
- package/dist/components/1_atoms/ButtonContextMenu/ButtonContextMenu.vue2.js +106 -0
- package/dist/components/1_atoms/ContextMenu/ContextMenu.vue.js +46 -0
- package/dist/components/1_atoms/EmbedPreview/EmbedPreview.vue.js +7 -0
- package/dist/components/1_atoms/EmbedPreview/EmbedPreview.vue2.js +39 -0
- package/dist/components/1_atoms/LinkPreview/LinkPreview.vue.js +7 -0
- package/dist/components/1_atoms/LinkPreview/LinkPreview.vue2.js +32 -0
- package/dist/components/1_atoms/Tooltip/Tooltip.vue.js +7 -0
- package/dist/components/1_atoms/Tooltip/Tooltip.vue2.js +77 -0
- package/dist/components/1_icons/AvatarIcon.vue.js +42 -0
- package/dist/components/1_icons/CheckIcon.vue.js +28 -0
- package/dist/components/1_icons/CloseButtonIcon.vue.js +21 -0
- package/dist/components/1_icons/ContactCRMIcon.vue.js +21 -0
- package/dist/components/1_icons/MenuIcon.vue.js +21 -0
- package/dist/components/1_icons/SearchIcon.vue.js +28 -0
- package/dist/components/1_icons/SettingsIcon.vue.js +18 -0
- package/dist/components/1_icons/TelegramIcon.vue.js +32 -0
- package/dist/components/1_icons/WhatsAppIcon.vue.js +32 -0
- package/dist/components/2_blocks/CommunicationPanel/CommunicationPanel.vue.js +307 -0
- package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationActions.js +83 -0
- package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationAttributes.js +60 -0
- package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationChannels.js +70 -0
- package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationDialogSync.js +36 -0
- package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationMenu.js +37 -0
- package/dist/components/2_blocks/CommunicationPanel/composables/useCommunicationSubMenu.js +69 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelMaxIcon.vue.js +18 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelPhoneIcon.vue.js +23 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelSMSIcon.vue.js +21 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelSubmenuMaxIcon.vue.js +34 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelSubmenuPhoneIcon.vue.js +32 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelSubmenuSMSIcon.vue.js +21 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelSubmenuTelegramIcon.vue.js +18 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelSubmenuWhatsAppIcon.vue.js +32 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelTelegramIcon.vue.js +32 -0
- package/dist/components/2_blocks/CommunicationPanel/icons/CommunicationPanelWhatsAppIcon.vue.js +18 -0
- package/dist/components/2_blocks/FeedFoundItem/FeedFoundItem.vue.js +7 -0
- package/dist/components/2_blocks/FeedFoundItem/FeedFoundItem.vue2.js +61 -0
- package/dist/components/2_blocks/FeedFoundObjects/FeedFoundObjects.vue.js +7 -0
- package/dist/components/2_blocks/FeedFoundObjects/FeedFoundObjects.vue2.js +58 -0
- package/dist/components/2_blocks/FeedSearch/FeedSearch.vue.js +7 -0
- package/dist/components/2_blocks/FeedSearch/FeedSearch.vue2.js +68 -0
- package/dist/components/2_chatinput_elements/ButtonCommandsSelector/ButtonCommandsSelector.vue.js +7 -0
- package/dist/components/2_chatinput_elements/ButtonCommandsSelector/ButtonCommandsSelector.vue2.js +70 -0
- package/dist/components/2_chatinput_elements/ButtonEmojiPicker/ButtonEmojiPicker.vue.js +106 -0
- package/dist/components/2_chatinput_elements/ButtonEmojiPicker/icons/SmilesIcon.vue.js +18 -0
- package/dist/components/2_chatinput_elements/ButtonTemplateSelector/ButtonTemplateSelector.vue.js +105 -0
- package/dist/components/2_chatinput_elements/ButtonTemplateSelector/icons/ChatTemplatesIcon.vue.js +25 -0
- package/dist/components/2_chatinput_elements/ButtonWabaTemplateSelector/ButtonWabaTemplateSelector.vue.js +98 -0
- package/dist/components/2_chatinput_elements/FilePreview/FilePreview.vue.js +7 -0
- package/dist/components/2_chatinput_elements/FilePreview/FilePreview.vue2.js +157 -0
- package/dist/components/2_chatinput_elements/FileUploader/FileUploader.vue.js +7 -0
- package/dist/components/2_chatinput_elements/FileUploader/FileUploader.vue2.js +105 -0
- package/dist/components/2_chatinput_elements/FileUploader/icons/FileUploaderIcon.vue.js +21 -0
- package/dist/components/2_chatinput_elements/PlaceholderComponent/PlaceholderComponent.vue.js +66 -0
- package/dist/components/2_chatinput_elements/TemplateSelector/TemplateSelector.vue.js +206 -0
- package/dist/components/2_chatinput_elements/TextFormatToolbar/TextFormatToolbar.vue.js +7 -0
- package/dist/components/2_chatinput_elements/TextFormatToolbar/TextFormatToolbar.vue2.js +210 -0
- package/dist/components/2_chatinput_elements/WABAAttachmentSection/WABAAttachmentSection.vue.js +7 -0
- package/dist/components/2_chatinput_elements/WABAAttachmentSection/WABAAttachmentSection.vue2.js +126 -0
- package/dist/components/2_chatinput_elements/WABAQuickReplyButtons/WABAQuickReplyButtons.vue.js +7 -0
- package/dist/components/2_chatinput_elements/WABAQuickReplyButtons/WABAQuickReplyButtons.vue2.js +38 -0
- package/dist/components/2_chatinput_elements/WABASeparatedQuickButtons/WABASeparatedQuickButtons.vue.js +7 -0
- package/dist/components/2_chatinput_elements/WABASeparatedQuickButtons/WABASeparatedQuickButtons.vue2.js +41 -0
- package/dist/components/2_chatinput_elements/WABATemplateSelector/WABATemplateSelector.vue.js +281 -0
- package/dist/components/2_chatlist_elements/ChatFilter/ChatFilter.vue.js +49 -0
- package/dist/components/2_chatlist_elements/ChatItem/ChatItem.vue.js +7 -0
- package/dist/components/2_chatlist_elements/ChatItem/ChatItem.vue2.js +193 -0
- package/dist/components/2_chatlist_elements/ChatTabs/ChatTabs.vue.js +37 -0
- package/dist/components/2_elements/AudioRecorder/AudioRecorder.vue.js +7 -0
- package/dist/components/2_elements/AudioRecorder/AudioRecorder.vue2.js +116 -0
- package/dist/components/2_elements/ChannelSelector/ChannelSelector.vue.js +73 -0
- package/dist/components/2_elements/ChatInfo/ChatInfo.vue.js +93 -0
- package/dist/components/2_elements/ChatPanel/ChatPanel.vue.js +47 -0
- package/dist/components/2_elements/ContactInfo/ContactInfo.vue.js +158 -0
- package/dist/components/2_elements/ThemeMode/ThemeMode.vue.js +49 -0
- package/dist/components/2_elements/UserProfile/UserProfile.vue.js +39 -0
- package/dist/components/2_elements/VideoRecorder/VideoRecorder.vue.js +7 -0
- package/dist/components/2_elements/VideoRecorder/VideoRecorder.vue2.js +94 -0
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue2.js +380 -0
- package/dist/components/2_feed_elements/BaseReplyMessage/BaseReplyMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/BaseReplyMessage/BaseReplyMessage.vue2.js +57 -0
- package/dist/components/2_feed_elements/CallMessage/CallMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/CallMessage/CallMessage.vue2.js +476 -0
- package/dist/components/2_feed_elements/CallMessage/icons/IncomingCallIcon.vue.js +26 -0
- package/dist/components/2_feed_elements/CallMessage/icons/IncomingCallIcon.vue2.js +4 -0
- package/dist/components/2_feed_elements/CallMessage/icons/OutgoingCallIcon.vue.js +26 -0
- package/dist/components/2_feed_elements/CallMessage/icons/OutgoingCallIcon.vue2.js +4 -0
- package/dist/components/2_feed_elements/DateMessage/DateMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/DateMessage/DateMessage.vue2.js +20 -0
- package/dist/components/2_feed_elements/DateMessageSticky/DateMessageSticky.vue.js +7 -0
- package/dist/components/2_feed_elements/DateMessageSticky/DateMessageSticky.vue2.js +18 -0
- package/dist/components/2_feed_elements/FeedKeyboard/FeedKeyboard.vue.js +7 -0
- package/dist/components/2_feed_elements/FeedKeyboard/FeedKeyboard.vue2.js +42 -0
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue2.js +204 -0
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue2.js +266 -0
- package/dist/components/2_feed_elements/MessageKeyboard/MessageKeyboard.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageKeyboard/MessageKeyboard.vue2.js +46 -0
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue2.js +161 -0
- package/dist/components/2_feed_elements/MessageReactions/composables/usePositioning.js +104 -0
- package/dist/components/2_feed_elements/MessageReactions/composables/useReactions.js +30 -0
- package/dist/components/2_feed_elements/MessageReactions/composables/useReactionsPanel.js +90 -0
- package/dist/components/2_feed_elements/MessageReactions/composables/useReactionsState.js +32 -0
- package/dist/components/2_feed_elements/MessageReactions/utils/quickReactions.js +17 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue.js +73 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue2.js +4 -0
- package/dist/components/2_feed_elements/ReplyAudioMessage/ReplyAudioMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyAudioMessage/ReplyAudioMessage.vue2.js +39 -0
- package/dist/components/2_feed_elements/ReplyCallMessage/ReplyCallMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyCallMessage/ReplyCallMessage.vue2.js +35 -0
- package/dist/components/2_feed_elements/ReplyFileMessage/ReplyFileMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyFileMessage/ReplyFileMessage.vue2.js +46 -0
- package/dist/components/2_feed_elements/ReplyImageMessage/ReplyImageMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyImageMessage/ReplyImageMessage.vue2.js +71 -0
- package/dist/components/2_feed_elements/ReplyStickerMessage/ReplyStickerMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyStickerMessage/ReplyStickerMessage.vue2.js +119 -0
- package/dist/components/2_feed_elements/ReplyTextMessage/ReplyTextMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyTextMessage/ReplyTextMessage.vue2.js +27 -0
- package/dist/components/2_feed_elements/ReplyVideoMessage/ReplyVideoMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/ReplyVideoMessage/ReplyVideoMessage.vue2.js +75 -0
- package/dist/components/2_feed_elements/SplashScreen/SplashScreen.vue.js +7 -0
- package/dist/components/2_feed_elements/SplashScreen/SplashScreen.vue2.js +23 -0
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue2.js +258 -0
- package/dist/components/2_feed_elements/StickerMessage/libs/tgs-player/lottie-player.esm.js +6469 -0
- package/dist/components/2_feed_elements/StickerMessage/libs/tgs-player/tgs-player.esm.js +7216 -0
- package/dist/components/2_feed_elements/StickerMessage/utils/stickerUtils.js +10 -0
- package/dist/components/2_feed_elements/StickerMessage/utils/suppress-lit-warning.js +21 -0
- package/dist/components/2_feed_elements/SystemMessage/SystemMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/SystemMessage/SystemMessage.vue2.js +18 -0
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue2.js +174 -0
- package/dist/components/2_feed_elements/TypingMessage/TypingMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/TypingMessage/TypingMessage.vue2.js +32 -0
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue.js +7 -0
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue2.js +286 -0
- package/dist/{CreateChat-C4y1ddK_.js → components/2_modals/CreateChat/CreateChat.vue.js} +8 -7
- package/dist/components/2_modals/CreateChat/CreateChat.vue2.js +1 -0
- package/dist/{CreateChat2-Oy9JaaRC.js → components/2_modals/CreateChat2/CreateChat2.vue.js} +4 -3
- package/dist/{CreateDialog-DacwclUe.js → components/2_modals/CreateDialog/CreateDialog.vue.js} +12 -11
- package/dist/components/2_modals/Modal/Modal.vue.js +69 -0
- package/dist/components/2_modals/ModalFullscreen/ModalFullscreen.vue.js +46 -0
- package/dist/components/2_modals/ModalNoFooter/ModalNoFooter.vue.js +43 -0
- package/dist/components/2_modals/ModalVideoRecorder/ModalVideoRecorder.vue.js +7 -0
- package/dist/{ModalVideoRecorder-BkPr4JP7.js → components/2_modals/ModalVideoRecorder/ModalVideoRecorder.vue2.js} +48 -49
- package/dist/components/2_modals/SelectUser/SelectUser.vue.js +63 -0
- package/dist/{SelectUser2-kaPAmxhi.js → components/2_modals/SelectUser2/SelectUser2.vue.js} +4 -3
- package/dist/components/3_compounds/ChatInput/ChatInput.vue.js +7 -0
- package/dist/components/3_compounds/ChatInput/ChatInput.vue2.js +192 -0
- package/dist/components/3_compounds/ChatInput/icons/SendIcon.vue.js +35 -0
- package/dist/components/3_compounds/ChatInput/icons/SendIcon.vue2.js +4 -0
- package/dist/components/3_compounds/ChatList/ChatList.vue.js +186 -0
- package/dist/components/3_compounds/ChatList/ChatListHeader.vue.js +27 -0
- package/dist/components/3_compounds/ChatList/composables/useChatListActions.js +16 -0
- package/dist/components/3_compounds/ChatList/composables/useChatListFilter.js +27 -0
- package/dist/components/3_compounds/ChatList/composables/useChatListScroll.js +47 -0
- package/dist/components/3_compounds/ChatList/composables/useChatListSelection.js +28 -0
- package/dist/components/3_compounds/Feed/Feed.vue.js +7 -0
- package/dist/components/3_compounds/Feed/Feed.vue2.js +295 -0
- package/dist/components/3_compounds/Feed/assets/chat-background.svg.js +7 -0
- package/dist/components/3_compounds/Feed/composables/useFeedButton.js +17 -0
- package/dist/components/3_compounds/Feed/composables/useFeedComponents.js +29 -0
- package/dist/components/3_compounds/Feed/composables/useFeedGrouping.js +15 -0
- package/dist/components/3_compounds/Feed/composables/useFeedKeyboard.js +15 -0
- package/dist/components/3_compounds/Feed/composables/useFeedLoadMore.js +62 -0
- package/dist/components/3_compounds/Feed/composables/useFeedMessageVisibility.js +33 -0
- package/dist/components/3_compounds/Feed/composables/useFeedReply.js +42 -0
- package/dist/components/3_compounds/Feed/composables/useFeedScroll.js +63 -0
- package/dist/components/3_compounds/Feed/composables/useFeedScrollTo.js +18 -0
- package/dist/components/3_compounds/Feed/composables/useStickyDate.js +61 -0
- package/dist/components/3_compounds/Feed/functions/throttle.js +11 -0
- package/dist/components/3_compounds/SideBar/SideBar.vue.js +190 -0
- package/dist/components/4_layouts/AdaptiveExtendedLayout/AdaptiveExtendedLayout.vue.js +63 -0
- package/dist/components/4_layouts/BaseLayout/BaseLayout.vue.js +18 -0
- package/dist/components/4_layouts/ChatWrapper/ChatWrapper.vue.js +7 -0
- package/dist/components/4_layouts/ChatWrapper/ChatWrapper.vue2.js +53 -0
- package/dist/components/4_layouts/ExtendedLayout/ExtendedLayout.vue.js +21 -0
- package/dist/components/4_layouts/FeedLayout/FeedLayout.vue.js +15 -0
- package/dist/components/5_containers/BaseContainer/BaseContainer.vue.js +33 -0
- package/dist/components/5_containers/FloatContainer/FloatContainer.vue.js +104 -0
- package/dist/functions/createReactionHandlers.js +19 -0
- package/dist/functions/formatTimestamp.js +8 -0
- package/dist/functions/getChannelAccentColor.js +30 -0
- package/dist/functions/getMessageClass.js +6 -0
- package/dist/functions/getStatusMessage.js +42 -0
- package/dist/functions/insertDaySeparators.js +24 -0
- package/dist/functions/parseMarkdown.js +18 -0
- package/dist/functions/playNotificationAudio.js +13 -0
- package/dist/functions/sortByTimestamp.js +4 -0
- package/dist/hooks/messages/useChannelAccentColor.js +29 -0
- package/dist/hooks/messages/useMessageActions.js +28 -0
- package/dist/hooks/messages/useMessageLinks.js +48 -0
- package/dist/hooks/messages/useSubtextTooltip.js +12 -0
- package/dist/hooks/modals/useCreateChat.js +19 -0
- package/dist/hooks/modals/useCreateChat2.js +16 -0
- package/dist/hooks/modals/useCreateDialog.js +20 -0
- package/dist/hooks/modals/useModal.js +41 -0
- package/dist/hooks/modals/useModalSelectUser2.js +20 -0
- package/dist/hooks/modals/useVideoRecorder.js +14 -0
- package/dist/hooks/uploadFile/generatePreview.js +20 -0
- package/dist/hooks/uploadFile/getTypeFileByMime.js +7 -0
- package/dist/hooks/uploadFile/uploadFile.js +28 -0
- package/dist/hooks/useDelayDebouncedRef.js +18 -0
- package/dist/hooks/useImmediateDebouncedRef.js +18 -0
- package/dist/hooks/useMessageDraft.js +87 -0
- package/dist/hooks/useSearchModel.js +11 -0
- package/dist/hooks/useTheme.js +11 -0
- package/dist/hooks/validators/chats/chatValidator.js +79 -0
- package/dist/hooks/validators/chats/useChatValidator.js +82 -0
- package/dist/hooks/validators/messages/messageValidator.js +84 -0
- package/dist/hooks/validators/messages/useMessageValidator.js +82 -0
- package/dist/hooks/validators/sidebar/sidebarValidator.js +47 -0
- package/dist/hooks/validators/sidebar/useSidebarValidator.js +82 -0
- package/dist/hooks/validators/useValidation.js +94 -0
- package/dist/index.js +239 -0
- package/dist/locale/en.js +22 -0
- package/dist/locale/ru.js +22 -0
- package/dist/locale/useLocale.js +34 -0
- package/dist/node_modules/entities/lib/esm/decode.js +278 -0
- package/dist/node_modules/entities/lib/esm/decode_codepoint.js +46 -0
- package/dist/node_modules/entities/lib/esm/generated/decode-data-html.js +7 -0
- package/dist/node_modules/entities/lib/esm/generated/decode-data-xml.js +7 -0
- package/dist/node_modules/linkify-it/index.js +187 -0
- package/dist/node_modules/linkify-it/lib/re.js +19 -0
- package/dist/node_modules/linkify-string/dist/linkify-string.js +41 -0
- package/dist/node_modules/linkifyjs/dist/linkify.js +679 -0
- package/dist/node_modules/markdown-it/lib/common/html_blocks.js +67 -0
- package/dist/node_modules/markdown-it/lib/common/html_re.js +5 -0
- package/dist/node_modules/markdown-it/lib/common/utils.js +169 -0
- package/dist/node_modules/markdown-it/lib/helpers/index.js +8 -0
- package/dist/node_modules/markdown-it/lib/helpers/parse_link_destination.js +44 -0
- package/dist/node_modules/markdown-it/lib/helpers/parse_link_label.js +21 -0
- package/dist/node_modules/markdown-it/lib/helpers/parse_link_title.js +37 -0
- package/dist/node_modules/markdown-it/lib/index.js +112 -0
- package/dist/node_modules/markdown-it/lib/parser_block.js +63 -0
- package/dist/node_modules/markdown-it/lib/parser_core.js +34 -0
- package/dist/node_modules/markdown-it/lib/parser_inline.js +96 -0
- package/dist/node_modules/markdown-it/lib/presets/commonmark.js +78 -0
- package/dist/node_modules/markdown-it/lib/presets/default.js +40 -0
- package/dist/node_modules/markdown-it/lib/presets/zero.js +59 -0
- package/dist/node_modules/markdown-it/lib/renderer.js +127 -0
- package/dist/node_modules/markdown-it/lib/ruler.js +95 -0
- package/dist/node_modules/markdown-it/lib/rules_block/blockquote.js +59 -0
- package/dist/node_modules/markdown-it/lib/rules_block/code.js +23 -0
- package/dist/node_modules/markdown-it/lib/rules_block/fence.js +30 -0
- package/dist/node_modules/markdown-it/lib/rules_block/heading.js +28 -0
- package/dist/node_modules/markdown-it/lib/rules_block/hr.js +27 -0
- package/dist/node_modules/markdown-it/lib/rules_block/html_block.js +37 -0
- package/dist/node_modules/markdown-it/lib/rules_block/lheading.js +43 -0
- package/dist/node_modules/markdown-it/lib/rules_block/list.js +110 -0
- package/dist/node_modules/markdown-it/lib/rules_block/paragraph.js +25 -0
- package/dist/node_modules/markdown-it/lib/rules_block/reference.js +95 -0
- package/dist/node_modules/markdown-it/lib/rules_block/state_block.js +84 -0
- package/dist/node_modules/markdown-it/lib/rules_block/table.js +99 -0
- package/dist/node_modules/markdown-it/lib/rules_core/block.js +7 -0
- package/dist/node_modules/markdown-it/lib/rules_core/inline.js +10 -0
- package/dist/node_modules/markdown-it/lib/rules_core/linkify.js +57 -0
- package/dist/node_modules/markdown-it/lib/rules_core/normalize.js +9 -0
- package/dist/node_modules/markdown-it/lib/rules_core/replacements.js +31 -0
- package/dist/node_modules/markdown-it/lib/rules_core/smartquotes.js +80 -0
- package/dist/node_modules/markdown-it/lib/rules_core/state_core.js +8 -0
- package/dist/node_modules/markdown-it/lib/rules_core/text_join.js +16 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/autolink.js +46 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/backticks.js +31 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/balance_pairs.js +34 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/emphasis.js +57 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/entity.js +33 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/escape.js +32 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/fragments_join.js +10 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/html_inline.js +32 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/image.js +48 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/link.js +40 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/linkify.js +28 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/newline.js +23 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/state_inline.js +27 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/strikethrough.js +54 -0
- package/dist/node_modules/markdown-it/lib/rules_inline/text.js +39 -0
- package/dist/node_modules/markdown-it/lib/token.js +31 -0
- package/dist/node_modules/mdurl/index.js +10 -0
- package/dist/node_modules/mdurl/lib/decode.js +61 -0
- package/dist/node_modules/mdurl/lib/encode.js +48 -0
- package/dist/node_modules/mdurl/lib/format.js +7 -0
- package/dist/node_modules/mdurl/lib/parse.js +74 -0
- package/dist/node_modules/punycode.js/punycode.es6.js +139 -0
- package/dist/node_modules/uc.micro/categories/Cc/regex.js +4 -0
- package/dist/node_modules/uc.micro/categories/Cf/regex.js +4 -0
- package/dist/node_modules/uc.micro/categories/P/regex.js +4 -0
- package/dist/node_modules/uc.micro/categories/S/regex.js +4 -0
- package/dist/node_modules/uc.micro/categories/Z/regex.js +4 -0
- package/dist/node_modules/uc.micro/index.js +14 -0
- package/dist/node_modules/uc.micro/properties/Any/regex.js +4 -0
- package/dist/node_modules/vue3-emoji-picker-ru/dist/emoji-picker.es.js +16471 -0
- package/dist/types/components/1_icons/AvatarIcon.vue.d.ts +1 -1
- package/dist/types/components/2_blocks/FeedSearch/FeedSearch.vue.d.ts +2 -2
- package/dist/types/components/2_chatinput_elements/ButtonWabaTemplateSelector/ButtonWabaTemplateSelector.vue.d.ts +2 -2
- package/dist/types/components/2_chatinput_elements/PlaceholderComponent/PlaceholderComponent.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/AudioMessage/AudioMessage.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/BaseReplyMessage/BaseReplyMessage.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/CallMessage/CallMessage.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/FileMessage/FileMessage.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/ImageMessage/ImageMessage.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/ReplyStickerMessage/ReplyStickerMessage.vue.d.ts +1 -3
- package/dist/types/components/2_feed_elements/StickerMessage/StickerMessage.vue.d.ts +3 -5
- package/dist/types/components/2_feed_elements/StickerMessage/utils/stickerUtils.d.ts +19 -0
- package/dist/types/components/2_feed_elements/TextMessage/TextMessage.vue.d.ts +2 -2
- package/dist/types/components/2_feed_elements/VideoMessage/VideoMessage.vue.d.ts +2 -2
- package/dist/types/components/2_modals/CreateDialog/CreateDialog.vue.d.ts +2 -2
- package/dist/types/components/2_modals/CreateDialog/stories/CreateDialog.stories.d.ts +2 -2
- package/dist/types/components/3_compounds/ChatList/ChatList.vue.d.ts +1 -1
- package/dist/types/components/3_compounds/Feed/Feed.vue.d.ts +2 -2
- package/dist/types/main.d.ts +1 -1
- package/package.json +5 -5
- package/dist/index-BzAEsq7j.js +0 -43508
- package/dist/vuessages.es.js +0 -123
- package/dist/vuessages.umd.js +0 -624
- /package/dist/types/{utils → components/2_feed_elements/StickerMessage/utils}/suppress-lit-warning.d.ts +0 -0
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { defineComponent as se, inject as re, ref as m, computed as f, onMounted as le, onUnmounted as ce, createElementBlock as l, openBlock as s, normalizeClass as x, unref as o, createCommentVNode as de, createVNode as k, createBlock as ue, Fragment as Q, renderList as A, createElementVNode as r, toDisplayString as g, Transition as T, withCtx as w, withDirectives as L, normalizeStyle as N, withModifiers as O, vShow as F, Teleport as me } from "vue";
|
|
2
|
+
import fe from "../../../node_modules/vue3-emoji-picker-ru/dist/emoji-picker.es.js";
|
|
3
|
+
/* empty css */
|
|
4
|
+
import { QUICK_REACTION_EMOJIS as ke } from "./utils/quickReactions.js";
|
|
5
|
+
import { isRightMessage as ge } from "./composables/usePositioning.js";
|
|
6
|
+
import { useReactionsState as pe } from "./composables/useReactionsState.js";
|
|
7
|
+
import { useReactionsPanel as ye } from "./composables/useReactionsPanel.js";
|
|
8
|
+
const ve = ["title", "onClick"], Re = { class: "message-reactions__emoji" }, be = { class: "message-reactions__count" }, he = ["title", "onClick"], Be = /* @__PURE__ */ se({
|
|
9
|
+
__name: "MessageReactions",
|
|
10
|
+
props: {
|
|
11
|
+
reactions: {
|
|
12
|
+
type: Object,
|
|
13
|
+
required: !1,
|
|
14
|
+
default: void 0
|
|
15
|
+
},
|
|
16
|
+
messageId: {
|
|
17
|
+
type: [String, Number],
|
|
18
|
+
required: !0
|
|
19
|
+
},
|
|
20
|
+
readonly: {
|
|
21
|
+
type: Boolean,
|
|
22
|
+
default: !1
|
|
23
|
+
},
|
|
24
|
+
enabled: {
|
|
25
|
+
type: Boolean,
|
|
26
|
+
default: !0
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
emits: ["toggle-reaction", "add-reaction", "remove-reaction"],
|
|
30
|
+
setup(i, { emit: j }) {
|
|
31
|
+
const a = i, c = j, p = re("chatAppId"), u = m(null), y = m(null), v = m("light"), R = f(() => ke), b = pe(f(() => a.reactions)), { displayedReactions: D, hasReactions: V, addReaction: h, removeReaction: z, toggleReaction: U } = b, $ = ye(R, y), {
|
|
32
|
+
isQuickReactionsOpen: C,
|
|
33
|
+
isFullPickerOpen: I,
|
|
34
|
+
pickerRef: J,
|
|
35
|
+
quickReactionsRef: K,
|
|
36
|
+
quickPanelStyle: G,
|
|
37
|
+
pickerStyle: H,
|
|
38
|
+
openQuickPanel: W,
|
|
39
|
+
closeQuickPanel: M,
|
|
40
|
+
openFullPicker: X,
|
|
41
|
+
closeFullPicker: Y,
|
|
42
|
+
handleQuickPanelMouseEnter: E,
|
|
43
|
+
handleQuickPanelMouseLeave: P,
|
|
44
|
+
handlePickerMouseEnter: _,
|
|
45
|
+
handlePickerMouseLeave: S,
|
|
46
|
+
handleClickOutside: B
|
|
47
|
+
} = $, Z = f(() => u.value ? ge(u.value) : !1), ee = () => {
|
|
48
|
+
var n;
|
|
49
|
+
if (!p) return "light";
|
|
50
|
+
const t = document.getElementById(p);
|
|
51
|
+
return (n = t == null ? void 0 : t.getAttribute("data-theme")) != null && n.includes("dark") ? "dark" : "light";
|
|
52
|
+
};
|
|
53
|
+
function te(t) {
|
|
54
|
+
a.readonly || !a.enabled || (U(t), c("toggle-reaction", { messageId: a.messageId, key: t }));
|
|
55
|
+
}
|
|
56
|
+
function ne() {
|
|
57
|
+
a.readonly || !a.enabled || (C.value ? M() : W());
|
|
58
|
+
}
|
|
59
|
+
function oe(t) {
|
|
60
|
+
var e, d;
|
|
61
|
+
if (a.readonly || !a.enabled) return;
|
|
62
|
+
((d = (e = b.localReactions.value) == null ? void 0 : e.items) == null ? void 0 : d.find((q) => q.key === t && q.reactedByMe)) ? (z(t), c("remove-reaction", { messageId: a.messageId, key: t })) : (h(t), c("add-reaction", { messageId: a.messageId, key: t })), M();
|
|
63
|
+
}
|
|
64
|
+
async function ae() {
|
|
65
|
+
a.readonly || !a.enabled || (v.value = ee(), await X());
|
|
66
|
+
}
|
|
67
|
+
function ie(t) {
|
|
68
|
+
Y(), !(a.readonly || !a.enabled) && (h(t.i), c("add-reaction", { messageId: a.messageId, key: t.i }));
|
|
69
|
+
}
|
|
70
|
+
return le(() => {
|
|
71
|
+
document.addEventListener("click", B);
|
|
72
|
+
}), ce(() => {
|
|
73
|
+
document.removeEventListener("click", B);
|
|
74
|
+
}), (t, n) => (s(), l("div", {
|
|
75
|
+
ref_key: "reactionsContainerRef",
|
|
76
|
+
ref: u,
|
|
77
|
+
class: x(["message-reactions", { "has-reactions": o(V), "is-right-message": Z.value, "is-disabled": !i.enabled }])
|
|
78
|
+
}, [
|
|
79
|
+
(s(!0), l(Q, null, A(o(D), (e) => (s(), l("button", {
|
|
80
|
+
key: e.key,
|
|
81
|
+
class: x(["message-reactions__chip", { "is-active": e.reactedByMe }]),
|
|
82
|
+
title: e.key,
|
|
83
|
+
onClick: (d) => te(e.key)
|
|
84
|
+
}, [
|
|
85
|
+
r("span", Re, g(e.key), 1),
|
|
86
|
+
r("span", be, g(e.count), 1)
|
|
87
|
+
], 10, ve))), 128)),
|
|
88
|
+
!i.readonly && i.enabled ? (s(), l("button", {
|
|
89
|
+
key: 0,
|
|
90
|
+
ref_key: "addButtonRef",
|
|
91
|
+
ref: y,
|
|
92
|
+
class: "message-reactions__add",
|
|
93
|
+
"aria-label": "Add reaction",
|
|
94
|
+
title: "Добавить реакцию",
|
|
95
|
+
onClick: ne
|
|
96
|
+
}, [...n[4] || (n[4] = [
|
|
97
|
+
r("span", null, "+", -1)
|
|
98
|
+
])], 512)) : de("", !0),
|
|
99
|
+
k(T, { name: "message-reactions-popover" }, {
|
|
100
|
+
default: w(() => [
|
|
101
|
+
L(r("div", {
|
|
102
|
+
ref_key: "quickReactionsRef",
|
|
103
|
+
ref: K,
|
|
104
|
+
class: "message-reactions__quick-panel",
|
|
105
|
+
style: N(o(G)),
|
|
106
|
+
onMouseenter: n[0] || (n[0] = //@ts-ignore
|
|
107
|
+
(...e) => o(E) && o(E)(...e)),
|
|
108
|
+
onMouseleave: n[1] || (n[1] = //@ts-ignore
|
|
109
|
+
(...e) => o(P) && o(P)(...e))
|
|
110
|
+
}, [
|
|
111
|
+
(s(!0), l(Q, null, A(R.value, (e) => (s(), l("button", {
|
|
112
|
+
key: e,
|
|
113
|
+
class: "message-reactions__quick-item",
|
|
114
|
+
title: e,
|
|
115
|
+
onClick: O((d) => oe(e), ["stop"])
|
|
116
|
+
}, g(e), 9, he))), 128)),
|
|
117
|
+
r("button", {
|
|
118
|
+
class: "message-reactions__expand",
|
|
119
|
+
title: "Развернуть",
|
|
120
|
+
onClick: O(ae, ["stop"])
|
|
121
|
+
}, [...n[5] || (n[5] = [
|
|
122
|
+
r("span", null, "⋯", -1)
|
|
123
|
+
])])
|
|
124
|
+
], 36), [
|
|
125
|
+
[F, o(C) && !i.readonly && i.enabled && !o(I)]
|
|
126
|
+
])
|
|
127
|
+
]),
|
|
128
|
+
_: 1
|
|
129
|
+
}),
|
|
130
|
+
(s(), ue(me, { to: "body" }, [
|
|
131
|
+
k(T, { name: "message-reactions-popover" }, {
|
|
132
|
+
default: w(() => [
|
|
133
|
+
L(r("div", {
|
|
134
|
+
ref_key: "pickerRef",
|
|
135
|
+
ref: J,
|
|
136
|
+
class: "message-reactions__picker",
|
|
137
|
+
style: N(o(H)),
|
|
138
|
+
onMouseenter: n[2] || (n[2] = //@ts-ignore
|
|
139
|
+
(...e) => o(_) && o(_)(...e)),
|
|
140
|
+
onMouseleave: n[3] || (n[3] = //@ts-ignore
|
|
141
|
+
(...e) => o(S) && o(S)(...e))
|
|
142
|
+
}, [
|
|
143
|
+
k(o(fe), {
|
|
144
|
+
native: !0,
|
|
145
|
+
theme: v.value,
|
|
146
|
+
"picker-type": "",
|
|
147
|
+
onSelect: ie
|
|
148
|
+
}, null, 8, ["theme"])
|
|
149
|
+
], 36), [
|
|
150
|
+
[F, o(I) && !i.readonly && i.enabled]
|
|
151
|
+
])
|
|
152
|
+
]),
|
|
153
|
+
_: 1
|
|
154
|
+
})
|
|
155
|
+
]))
|
|
156
|
+
], 2));
|
|
157
|
+
}
|
|
158
|
+
});
|
|
159
|
+
export {
|
|
160
|
+
Be as default
|
|
161
|
+
};
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { nextTick as x } from "vue";
|
|
2
|
+
function R(i) {
|
|
3
|
+
if (!i) return null;
|
|
4
|
+
let t = i.parentElement;
|
|
5
|
+
for (; t; ) {
|
|
6
|
+
if (t.classList.contains("message-feed"))
|
|
7
|
+
return t;
|
|
8
|
+
t = t.parentElement;
|
|
9
|
+
}
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
function w(i) {
|
|
13
|
+
if (!i) return !1;
|
|
14
|
+
let t = i.parentElement;
|
|
15
|
+
for (; t; ) {
|
|
16
|
+
for (const f of t.classList)
|
|
17
|
+
if (f.includes("__right"))
|
|
18
|
+
return !0;
|
|
19
|
+
if (t.classList.contains("message-feed"))
|
|
20
|
+
break;
|
|
21
|
+
t = t.parentElement;
|
|
22
|
+
}
|
|
23
|
+
return !1;
|
|
24
|
+
}
|
|
25
|
+
async function P(i, t, f = 300) {
|
|
26
|
+
if (!t) return {};
|
|
27
|
+
const a = R(t);
|
|
28
|
+
if (!a) return {};
|
|
29
|
+
const d = w(t);
|
|
30
|
+
await x();
|
|
31
|
+
const n = t.closest(".message-reactions");
|
|
32
|
+
if (!n) return {};
|
|
33
|
+
const e = t.getBoundingClientRect(), s = a.getBoundingClientRect(), g = n.getBoundingClientRect(), c = (i == null ? void 0 : i.offsetWidth) || f, o = 8;
|
|
34
|
+
if (d) {
|
|
35
|
+
const p = s.right - e.right, h = e.left - g.left, C = e.width;
|
|
36
|
+
return c <= p - o ? {
|
|
37
|
+
left: `${h + C + 6}px`,
|
|
38
|
+
// справа от кнопки с gap 6px
|
|
39
|
+
right: "auto",
|
|
40
|
+
transform: "none"
|
|
41
|
+
} : {
|
|
42
|
+
left: `${h - c - 6}px`,
|
|
43
|
+
right: "auto",
|
|
44
|
+
transform: "none"
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
const u = e.left - g.left, l = e.width, r = e.left - s.left;
|
|
48
|
+
return c <= r - o ? {
|
|
49
|
+
left: `${u - c - 6}px`,
|
|
50
|
+
// слева от кнопки с gap 6px
|
|
51
|
+
right: "auto",
|
|
52
|
+
transform: "none"
|
|
53
|
+
} : {
|
|
54
|
+
left: `${u + l + 6}px`,
|
|
55
|
+
// справа от кнопки с gap 6px
|
|
56
|
+
right: "auto",
|
|
57
|
+
transform: "none"
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
async function B(i, t, f = 300) {
|
|
61
|
+
if (!t) return {};
|
|
62
|
+
const a = R(t);
|
|
63
|
+
if (!a) return {};
|
|
64
|
+
const d = w(t);
|
|
65
|
+
await x();
|
|
66
|
+
const n = t.getBoundingClientRect(), e = a.getBoundingClientRect(), s = (i == null ? void 0 : i.offsetWidth) || f, g = (i == null ? void 0 : i.offsetHeight) || 450, c = 8, o = 6, u = window.innerHeight - n.bottom - o, l = n.top - o;
|
|
67
|
+
let r;
|
|
68
|
+
if (u >= g || u >= l ? r = { top: `${n.bottom + o}px` } : r = { bottom: `${window.innerHeight - n.top + o}px` }, d) {
|
|
69
|
+
const h = e.right - n.right;
|
|
70
|
+
return s <= h - c ? {
|
|
71
|
+
position: "fixed",
|
|
72
|
+
...r,
|
|
73
|
+
left: `${n.right + o}px`,
|
|
74
|
+
right: "auto",
|
|
75
|
+
transform: "none"
|
|
76
|
+
} : {
|
|
77
|
+
position: "fixed",
|
|
78
|
+
...r,
|
|
79
|
+
left: `${n.left - s - o}px`,
|
|
80
|
+
right: "auto",
|
|
81
|
+
transform: "none"
|
|
82
|
+
};
|
|
83
|
+
}
|
|
84
|
+
const p = n.left - e.left;
|
|
85
|
+
return s <= p - c ? {
|
|
86
|
+
position: "fixed",
|
|
87
|
+
...r,
|
|
88
|
+
left: `${n.left - s - o}px`,
|
|
89
|
+
right: "auto",
|
|
90
|
+
transform: "none"
|
|
91
|
+
} : {
|
|
92
|
+
position: "fixed",
|
|
93
|
+
...r,
|
|
94
|
+
left: `${n.right + o}px`,
|
|
95
|
+
right: "auto",
|
|
96
|
+
transform: "none"
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
export {
|
|
100
|
+
B as calculateFixedPanelPosition,
|
|
101
|
+
P as calculatePanelPosition,
|
|
102
|
+
R as findFeedContainer,
|
|
103
|
+
w as isRightMessage
|
|
104
|
+
};
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
function f(e, t) {
|
|
2
|
+
e.value || (e.value = {
|
|
3
|
+
items: [],
|
|
4
|
+
meta: { mode: "multi" }
|
|
5
|
+
});
|
|
6
|
+
const u = e.value.items.find((i) => i.key === t);
|
|
7
|
+
u ? (u.count++, u.reactedByMe = !0) : e.value.items.push({
|
|
8
|
+
key: t,
|
|
9
|
+
count: 1,
|
|
10
|
+
reactedByMe: !0
|
|
11
|
+
});
|
|
12
|
+
}
|
|
13
|
+
function d(e, t) {
|
|
14
|
+
if (!e.value) return;
|
|
15
|
+
const u = e.value.items.find((i) => i.key === t);
|
|
16
|
+
u && (u.count--, u.reactedByMe = !1, u.count <= 0 && (e.value.items = e.value.items.filter((i) => i.key !== t), e.value.items.length === 0 && (e.value = void 0)));
|
|
17
|
+
}
|
|
18
|
+
function v(e, t) {
|
|
19
|
+
if (!e.value) {
|
|
20
|
+
f(e, t);
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
const u = e.value.items.find((i) => i.key === t);
|
|
24
|
+
u != null && u.reactedByMe ? d(e, t) : f(e, t);
|
|
25
|
+
}
|
|
26
|
+
export {
|
|
27
|
+
f as updateLocalReactionsAdd,
|
|
28
|
+
d as updateLocalReactionsRemove,
|
|
29
|
+
v as updateLocalReactionsToggle
|
|
30
|
+
};
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import { ref as n, watch as p, nextTick as f } from "vue";
|
|
2
|
+
import { calculatePanelPosition as z, calculateFixedPanelPosition as M } from "./usePositioning.js";
|
|
3
|
+
function j(y, i) {
|
|
4
|
+
const t = n(!1), l = n(!1), e = n(null), s = n(null), h = n({}), v = n({});
|
|
5
|
+
let r = !1, P = !1, c = !1;
|
|
6
|
+
p(t, async (u) => {
|
|
7
|
+
if (u) {
|
|
8
|
+
const a = y.value.length * 40 + 40, k = await z(s.value, i.value, a);
|
|
9
|
+
h.value = k;
|
|
10
|
+
}
|
|
11
|
+
}), p(l, async (u) => {
|
|
12
|
+
if (u) {
|
|
13
|
+
await f();
|
|
14
|
+
let a = 0;
|
|
15
|
+
const k = 20;
|
|
16
|
+
for (; !e.value && a < k; )
|
|
17
|
+
await new Promise((o) => setTimeout(o, 10)), a++;
|
|
18
|
+
await f();
|
|
19
|
+
const w = 350;
|
|
20
|
+
let m = await M(e.value, i.value, w);
|
|
21
|
+
if (v.value = m, e.value) {
|
|
22
|
+
let o = 0;
|
|
23
|
+
const S = 10;
|
|
24
|
+
for (; e.value.offsetWidth === 0 && o < S; )
|
|
25
|
+
await new Promise((q) => setTimeout(q, 10)), o++;
|
|
26
|
+
await f(), m = await M(e.value, i.value, e.value.offsetWidth || w), v.value = m;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
});
|
|
30
|
+
function O() {
|
|
31
|
+
t.value = !0, l.value = !1;
|
|
32
|
+
}
|
|
33
|
+
function Q() {
|
|
34
|
+
t.value = !1;
|
|
35
|
+
}
|
|
36
|
+
async function x() {
|
|
37
|
+
t.value = !1, await f(), l.value = !0;
|
|
38
|
+
}
|
|
39
|
+
function T() {
|
|
40
|
+
l.value = !1;
|
|
41
|
+
}
|
|
42
|
+
function F() {
|
|
43
|
+
P = !0;
|
|
44
|
+
}
|
|
45
|
+
function W() {
|
|
46
|
+
P = !1, setTimeout(() => {
|
|
47
|
+
!c && !P && (t.value = !1);
|
|
48
|
+
}, 150);
|
|
49
|
+
}
|
|
50
|
+
function d() {
|
|
51
|
+
r = !0;
|
|
52
|
+
}
|
|
53
|
+
function g() {
|
|
54
|
+
r = !1, setTimeout(() => {
|
|
55
|
+
!c && !r && (l.value = !1);
|
|
56
|
+
}, 150);
|
|
57
|
+
}
|
|
58
|
+
function A() {
|
|
59
|
+
c = !0;
|
|
60
|
+
}
|
|
61
|
+
function E() {
|
|
62
|
+
c = !1;
|
|
63
|
+
}
|
|
64
|
+
function L(u) {
|
|
65
|
+
const a = u.target;
|
|
66
|
+
t.value && s.value && i.value && !s.value.contains(a) && !i.value.contains(a) && (t.value = !1), l.value && e.value && i.value && !e.value.contains(a) && !i.value.contains(a) && (l.value = !1);
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
isQuickReactionsOpen: t,
|
|
70
|
+
isFullPickerOpen: l,
|
|
71
|
+
pickerRef: e,
|
|
72
|
+
quickReactionsRef: s,
|
|
73
|
+
quickPanelStyle: h,
|
|
74
|
+
pickerStyle: v,
|
|
75
|
+
openQuickPanel: O,
|
|
76
|
+
closeQuickPanel: Q,
|
|
77
|
+
openFullPicker: x,
|
|
78
|
+
closeFullPicker: T,
|
|
79
|
+
handleQuickPanelMouseEnter: F,
|
|
80
|
+
handleQuickPanelMouseLeave: W,
|
|
81
|
+
handlePickerMouseEnter: d,
|
|
82
|
+
handlePickerMouseLeave: g,
|
|
83
|
+
handleButtonMouseEnter: A,
|
|
84
|
+
handleButtonMouseLeave: E,
|
|
85
|
+
handleClickOutside: L
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
export {
|
|
89
|
+
j as useReactionsPanel
|
|
90
|
+
};
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { ref as d, watch as s, computed as n } from "vue";
|
|
2
|
+
import { updateLocalReactionsToggle as m, updateLocalReactionsRemove as f, updateLocalReactionsAdd as p } from "./useReactions.js";
|
|
3
|
+
function g(o) {
|
|
4
|
+
const t = d(o.value);
|
|
5
|
+
s(o, (e) => {
|
|
6
|
+
t.value = e ? { ...e } : void 0;
|
|
7
|
+
}, { deep: !0, immediate: !0 });
|
|
8
|
+
const a = n(() => {
|
|
9
|
+
var e;
|
|
10
|
+
return (e = t.value) != null && e.items ? t.value.items.filter((l) => l.count > 0) : [];
|
|
11
|
+
}), c = n(() => a.value.length > 0);
|
|
12
|
+
function u(e) {
|
|
13
|
+
p(t, e);
|
|
14
|
+
}
|
|
15
|
+
function i(e) {
|
|
16
|
+
f(t, e);
|
|
17
|
+
}
|
|
18
|
+
function r(e) {
|
|
19
|
+
m(t, e);
|
|
20
|
+
}
|
|
21
|
+
return {
|
|
22
|
+
localReactions: t,
|
|
23
|
+
displayedReactions: a,
|
|
24
|
+
hasReactions: c,
|
|
25
|
+
addReaction: u,
|
|
26
|
+
removeReaction: i,
|
|
27
|
+
toggleReaction: r
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
export {
|
|
31
|
+
g as useReactionsState
|
|
32
|
+
};
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { defineComponent as p, computed as n, createBlock as m, createCommentVNode as r, openBlock as e, withCtx as d, createElementVNode as l, normalizeClass as g, createElementBlock as a, Fragment as C } from "vue";
|
|
2
|
+
import f from "../../1_atoms/Tooltip/Tooltip.vue.js";
|
|
3
|
+
import { statuses as y } from "../../../functions/getStatusMessage.js";
|
|
4
|
+
import "../../../functions/parseMarkdown.js";
|
|
5
|
+
const S = {
|
|
6
|
+
key: 0,
|
|
7
|
+
class: "pi pi-clock"
|
|
8
|
+
}, k = {
|
|
9
|
+
key: 1,
|
|
10
|
+
class: "pi pi-times-circle"
|
|
11
|
+
}, h = {
|
|
12
|
+
key: 0,
|
|
13
|
+
class: "pi pi-check"
|
|
14
|
+
}, v = /* @__PURE__ */ p({
|
|
15
|
+
name: "MessageStatusIndicator",
|
|
16
|
+
__name: "MessageStatusIndicator",
|
|
17
|
+
props: {
|
|
18
|
+
baseClass: {
|
|
19
|
+
type: String,
|
|
20
|
+
required: !0
|
|
21
|
+
},
|
|
22
|
+
messageStatus: {
|
|
23
|
+
type: String,
|
|
24
|
+
required: !0
|
|
25
|
+
},
|
|
26
|
+
statusClass: {
|
|
27
|
+
type: String,
|
|
28
|
+
default: ""
|
|
29
|
+
},
|
|
30
|
+
statusTitle: {
|
|
31
|
+
type: String,
|
|
32
|
+
default: ""
|
|
33
|
+
},
|
|
34
|
+
messageClass: {
|
|
35
|
+
type: String,
|
|
36
|
+
required: !0
|
|
37
|
+
},
|
|
38
|
+
tooltipPosition: {
|
|
39
|
+
type: String,
|
|
40
|
+
default: "bottom-left"
|
|
41
|
+
},
|
|
42
|
+
statuses: {
|
|
43
|
+
type: Array,
|
|
44
|
+
default: () => y
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
setup(s) {
|
|
48
|
+
const t = s, u = n(() => t.messageClass === `${t.baseClass}__right` && t.statuses.includes(t.messageStatus)), c = n(() => {
|
|
49
|
+
const i = [`${t.baseClass}__status`];
|
|
50
|
+
return t.statusClass && i.push(t.statusClass), i;
|
|
51
|
+
});
|
|
52
|
+
return (i, o) => u.value ? (e(), m(f, {
|
|
53
|
+
key: 0,
|
|
54
|
+
text: s.statusTitle,
|
|
55
|
+
position: s.tooltipPosition
|
|
56
|
+
}, {
|
|
57
|
+
default: d(() => [
|
|
58
|
+
l("div", {
|
|
59
|
+
class: g(c.value)
|
|
60
|
+
}, [
|
|
61
|
+
s.messageStatus === "pending" ? (e(), a("span", S)) : s.messageStatus === "error" ? (e(), a("span", k)) : (e(), a(C, { key: 2 }, [
|
|
62
|
+
s.messageStatus !== "sent" ? (e(), a("span", h)) : r("", !0),
|
|
63
|
+
o[0] || (o[0] = l("span", { class: "pi pi-check" }, null, -1))
|
|
64
|
+
], 64))
|
|
65
|
+
], 2)
|
|
66
|
+
]),
|
|
67
|
+
_: 1
|
|
68
|
+
}, 8, ["text", "position"])) : r("", !0);
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
export {
|
|
72
|
+
v as default
|
|
73
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { defineComponent as u, ref as c, createElementBlock as n, openBlock as i, Fragment as g, withDirectives as _, createElementVNode as s, vShow as y, createCommentVNode as l, toDisplayString as f, unref as o } from "vue";
|
|
2
|
+
import { useMessageLinks as k } from "../../../hooks/messages/useMessageLinks.js";
|
|
3
|
+
import "../../../functions/parseMarkdown.js";
|
|
4
|
+
const v = { class: "audio-message__play" }, x = { class: "audio-message__text-container" }, h = { key: 0 }, w = ["innerHTML"], N = /* @__PURE__ */ u({
|
|
5
|
+
__name: "ReplyAudioMessage",
|
|
6
|
+
props: {
|
|
7
|
+
message: {
|
|
8
|
+
type: Object,
|
|
9
|
+
required: !0
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
setup(t) {
|
|
13
|
+
const r = t, m = c(!1), { linkedHtml: d, inNewWindow: a } = k(() => r.message.text);
|
|
14
|
+
return (M, e) => (i(), n(g, null, [
|
|
15
|
+
_(s("div", v, [...e[1] || (e[1] = [
|
|
16
|
+
s("span", { class: "pi pi-play" }, null, -1)
|
|
17
|
+
])], 512), [
|
|
18
|
+
[y, !m.value]
|
|
19
|
+
]),
|
|
20
|
+
s("div", x, [
|
|
21
|
+
t.message.header ? (i(), n("p", h, f(t.message.header), 1)) : l("", !0),
|
|
22
|
+
e[2] || (e[2] = s("div", { class: "audio-message__reply-description" }, [
|
|
23
|
+
s("span", { class: "pi pi-microphone" }),
|
|
24
|
+
s("p", null, "Аудиосообщение")
|
|
25
|
+
], -1)),
|
|
26
|
+
t.message.text ? (i(), n("p", {
|
|
27
|
+
key: 1,
|
|
28
|
+
class: "audio-message__text",
|
|
29
|
+
onClick: e[0] || (e[0] = //@ts-ignore
|
|
30
|
+
(...p) => o(a) && o(a)(...p)),
|
|
31
|
+
innerHTML: o(d)
|
|
32
|
+
}, null, 8, w)) : l("", !0)
|
|
33
|
+
])
|
|
34
|
+
], 64));
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
export {
|
|
38
|
+
N as default
|
|
39
|
+
};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { defineComponent as c, createElementBlock as s, openBlock as a, Fragment as o, createElementVNode as l, normalizeClass as i, createCommentVNode as t, toDisplayString as n } from "vue";
|
|
2
|
+
const m = { class: "call-message__text-container" }, r = { key: 0 }, d = { class: "call-message__reply-description" }, g = {
|
|
3
|
+
key: 0,
|
|
4
|
+
class: "call-message__title"
|
|
5
|
+
}, _ = {
|
|
6
|
+
key: 1,
|
|
7
|
+
class: "call-message__title"
|
|
8
|
+
}, u = { key: 1 }, C = /* @__PURE__ */ c({
|
|
9
|
+
__name: "ReplyCallMessage",
|
|
10
|
+
props: {
|
|
11
|
+
message: {
|
|
12
|
+
type: Object,
|
|
13
|
+
required: !0
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
setup(e) {
|
|
17
|
+
return console.log(e.message), (h, y) => (a(), s(o, null, [
|
|
18
|
+
l("div", null, [
|
|
19
|
+
l("span", {
|
|
20
|
+
class: i(["call-message__icon pi pi-phone", { "call-message__icon-missed": e.message.isMissedCall }])
|
|
21
|
+
}, null, 2)
|
|
22
|
+
]),
|
|
23
|
+
l("div", m, [
|
|
24
|
+
e.message.header ? (a(), s("p", r, n(e.message.header), 1)) : t("", !0),
|
|
25
|
+
l("div", d, [
|
|
26
|
+
e.message.isMissedCall ? (a(), s("span", _, " Пропущенный аудиозвонок ")) : (a(), s("span", g, " Аудиозвонок "))
|
|
27
|
+
]),
|
|
28
|
+
e.message.callDuration ? (a(), s("p", u, n(e.message.callDuration), 1)) : t("", !0)
|
|
29
|
+
])
|
|
30
|
+
], 64));
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
export {
|
|
34
|
+
C as default
|
|
35
|
+
};
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { defineComponent as f, createElementBlock as n, openBlock as l, Fragment as c, createElementVNode as s, createCommentVNode as o, toDisplayString as r, unref as a } from "vue";
|
|
2
|
+
import { useMessageLinks as u } from "../../../hooks/messages/useMessageLinks.js";
|
|
3
|
+
import "../../../functions/parseMarkdown.js";
|
|
4
|
+
const k = ["href"], _ = { key: 0 }, h = ["href"], p = { class: "file-message__filename-text" }, x = ["innerHTML"], C = /* @__PURE__ */ f({
|
|
5
|
+
__name: "ReplyFileMessage",
|
|
6
|
+
props: {
|
|
7
|
+
message: {
|
|
8
|
+
type: Object,
|
|
9
|
+
required: !0
|
|
10
|
+
}
|
|
11
|
+
},
|
|
12
|
+
setup(e) {
|
|
13
|
+
const m = e, { linkedHtml: d, inNewWindow: i } = u(() => m.message.text);
|
|
14
|
+
return (y, t) => (l(), n(c, null, [
|
|
15
|
+
s("a", {
|
|
16
|
+
class: "file-message__link",
|
|
17
|
+
href: e.message.url,
|
|
18
|
+
download: "",
|
|
19
|
+
target: "_blank"
|
|
20
|
+
}, [...t[1] || (t[1] = [
|
|
21
|
+
s("span", { class: "pi pi-file" }, null, -1)
|
|
22
|
+
])], 8, k),
|
|
23
|
+
s("div", null, [
|
|
24
|
+
e.message.header ? (l(), n("p", _, r(e.message.header), 1)) : o("", !0),
|
|
25
|
+
s("a", {
|
|
26
|
+
class: "file-message__link",
|
|
27
|
+
href: e.message.url,
|
|
28
|
+
download: "",
|
|
29
|
+
target: "_blank"
|
|
30
|
+
}, [
|
|
31
|
+
s("p", p, r(e.message.filename), 1)
|
|
32
|
+
], 8, h),
|
|
33
|
+
e.message.text ? (l(), n("p", {
|
|
34
|
+
key: 1,
|
|
35
|
+
class: "file-message__text",
|
|
36
|
+
onClick: t[0] || (t[0] = //@ts-ignore
|
|
37
|
+
(...g) => a(i) && a(i)(...g)),
|
|
38
|
+
innerHTML: a(d)
|
|
39
|
+
}, null, 8, x)) : o("", !0)
|
|
40
|
+
])
|
|
41
|
+
], 64));
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
export {
|
|
45
|
+
C as default
|
|
46
|
+
};
|