@bcc-code/vue-bcc-chat-ui 6.5.0 → 7.0.2

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.
Files changed (137) hide show
  1. package/dist/App.vue.d.ts +1 -1
  2. package/dist/auth.d.ts +2 -0
  3. package/dist/chat/accessToken.d.ts +9 -1
  4. package/dist/chat/avatar.d.ts +3 -0
  5. package/dist/chat/client.d.ts +7 -0
  6. package/dist/chat/conversationState.d.ts +11 -0
  7. package/dist/chat/data.d.ts +8 -17
  8. package/dist/chat/environment.d.ts +7 -2
  9. package/dist/chat/i18n/en.d.ts +118 -0
  10. package/dist/chat/i18n/nb.d.ts +118 -0
  11. package/dist/chat/i18n/types.d.ts +2 -0
  12. package/dist/chat/index.d.ts +87 -446
  13. package/dist/chat/localization.d.ts +15 -0
  14. package/dist/chat/messageText.d.ts +13 -0
  15. package/dist/chat/mockClient.d.ts +13 -0
  16. package/dist/chat/offlineStore.d.ts +53 -0
  17. package/dist/chat/reactions.d.ts +8 -0
  18. package/dist/chat/richText.d.ts +5 -0
  19. package/dist/chat/theme.d.ts +10 -400
  20. package/dist/chat/types.d.ts +206 -28
  21. package/dist/components/chat/BccChat.vue.d.ts +509 -0
  22. package/dist/components/chat/ChatStatusOverlay.vue.d.ts +33 -0
  23. package/dist/components/chat/publicContract.d.ts +43 -0
  24. package/dist/components/conversations/ConversationList.vue.d.ts +15 -0
  25. package/dist/components/conversations/UserProfileCard.vue.d.ts +8 -0
  26. package/dist/components/messages/ActionMessageRow.vue.d.ts +5 -0
  27. package/dist/components/messages/ComposerActionsPopover.vue.d.ts +19 -0
  28. package/dist/components/messages/ComposerContextBanner.vue.d.ts +13 -0
  29. package/dist/components/messages/ComposerFormatMenu.vue.d.ts +13 -0
  30. package/dist/components/messages/ComposerPollDialog.vue.d.ts +16 -0
  31. package/dist/components/messages/ComposerScheduleDialog.vue.d.ts +20 -0
  32. package/dist/components/messages/ConversationComposer.vue.d.ts +106 -0
  33. package/dist/components/messages/LinkPreviewCard.vue.d.ts +6 -0
  34. package/dist/components/messages/LinkifiedText.vue.d.ts +8 -0
  35. package/dist/components/messages/MessageAttachmentList.vue.d.ts +10 -0
  36. package/dist/components/messages/MessageComposer.vue.d.ts +69 -0
  37. package/dist/components/messages/MessageDeliveryStatus.vue.d.ts +6 -0
  38. package/dist/components/messages/MessageItem.vue.d.ts +27 -0
  39. package/dist/components/messages/MessageItemHeader.vue.d.ts +6 -0
  40. package/dist/components/messages/MessageItemMenu.vue.d.ts +26 -0
  41. package/dist/components/messages/MessageItemMenuReactions.vue.d.ts +11 -0
  42. package/dist/components/messages/MessageItemReactions.vue.d.ts +14 -0
  43. package/dist/components/messages/MessageList.vue.d.ts +115 -0
  44. package/dist/components/messages/MessageListHeader.vue.d.ts +7 -0
  45. package/dist/components/messages/MessagePollContent.vue.d.ts +12 -0
  46. package/dist/components/messages/MessageReactionList.vue.d.ts +12 -0
  47. package/dist/components/messages/MessageReplyQuote.vue.d.ts +10 -0
  48. package/dist/components/messages/MessageTextContent.vue.d.ts +6 -0
  49. package/dist/components/overlays/FullscreenDialog.vue.d.ts +34 -0
  50. package/dist/components/overlays/MediaViewerDialog.vue.d.ts +13 -0
  51. package/dist/components/overlays/MessageInfoDialog.vue.d.ts +14 -0
  52. package/dist/components/overlays/ReceiptSection.vue.d.ts +9 -0
  53. package/dist/components/overlays/ScheduledMessagesDialog.vue.d.ts +25 -0
  54. package/dist/composables/chat/index.d.ts +13 -0
  55. package/dist/composables/chat/useComposerContext.d.ts +43 -0
  56. package/dist/composables/chat/useConversationContext.d.ts +30 -0
  57. package/dist/composables/chat/useDialogsContext.d.ts +27 -0
  58. package/dist/composables/chat/useMessagesContext.d.ts +36 -0
  59. package/dist/composables/useChatActions.d.ts +21 -0
  60. package/dist/composables/useChatEventBus.d.ts +91 -0
  61. package/dist/composables/useComposerDrafts.d.ts +44 -0
  62. package/dist/composables/useConversationComposer.d.ts +15 -0
  63. package/dist/composables/useGroupMemberTracking.d.ts +28 -0
  64. package/dist/composables/useImageZoom.d.ts +26 -0
  65. package/dist/composables/useMessageActionMenu.d.ts +202 -0
  66. package/dist/composables/useMessageInfoDialog.d.ts +165 -0
  67. package/dist/composables/useMessageListScroll.d.ts +30 -0
  68. package/dist/composables/useMessageNavigation.d.ts +18 -0
  69. package/dist/composables/useRichTextComposer.d.ts +31 -0
  70. package/dist/demo/ApiExamplesPanel.vue.d.ts +6 -0
  71. package/dist/demo/ChatShell.vue.d.ts +10 -0
  72. package/dist/demo/ThemeModeToggle.vue.d.ts +12 -0
  73. package/dist/demo/useDemoThemeMode.d.ts +6 -0
  74. package/dist/design.d.ts +10 -0
  75. package/dist/index.d.ts +10 -3
  76. package/dist/main.d.ts +0 -1
  77. package/dist/style.css +1 -0
  78. package/dist/vue-bcc-chat-ui.js +8858 -84780
  79. package/dist/vue-bcc-chat-ui.js.map +1 -1
  80. package/package.json +42 -51
  81. package/README.md +0 -89
  82. package/dist/chat/bccuiExtension.d.ts +0 -7
  83. package/dist/chat/captionedAttachment.d.ts +0 -7
  84. package/dist/chat/captionedAttachmentExtension.d.ts +0 -7
  85. package/dist/chat/cometChatPatches.d.ts +0 -3
  86. package/dist/chat/connection.d.ts +0 -14
  87. package/dist/chat/logger.d.ts +0 -12
  88. package/dist/chat/login.d.ts +0 -14
  89. package/dist/chat/message.d.ts +0 -15
  90. package/dist/chat/replyExtension.d.ts +0 -26
  91. package/dist/chat/replyStyle.d.ts +0 -30
  92. package/dist/chat/rescheduleExtension.d.ts +0 -22
  93. package/dist/chat/scheduledMessage.d.ts +0 -4
  94. package/dist/chat/styleFix.d.ts +0 -14
  95. package/dist/chat/translations.d.ts +0 -3
  96. package/dist/chat/uiKit.d.ts +0 -10
  97. package/dist/component-overrides/BccBubbleWrapper.vue.d.ts +0 -156
  98. package/dist/component-overrides/CometChatMessageListOverride.vue.d.ts +0 -2
  99. package/dist/components/BccAttachmentBox.vue.d.ts +0 -29
  100. package/dist/components/BccAttachmentPreview.vue.d.ts +0 -23
  101. package/dist/components/BccChatMessageBubble.vue.d.ts +0 -99
  102. package/dist/components/BccChatMessageList.vue.d.ts +0 -82
  103. package/dist/components/BccChatMessages.vue.d.ts +0 -33
  104. package/dist/components/BccChatSendButton.vue.d.ts +0 -4
  105. package/dist/components/BccCometChatFullScreenViewer.vue.d.ts +0 -24
  106. package/dist/components/BccFileBubble.vue.d.ts +0 -70
  107. package/dist/components/BccImageBubble.vue.d.ts +0 -27
  108. package/dist/components/BccReplyBox.vue.d.ts +0 -36
  109. package/dist/components/BccReplyPreview.vue.d.ts +0 -30
  110. package/dist/components/BccScheduledMessageModal.vue.d.ts +0 -31
  111. package/dist/components/BccScheduledMessages.vue.d.ts +0 -25
  112. package/dist/components/BccScheduledSendButton.vue.d.ts +0 -14
  113. package/dist/offline/cometChatAPIInterceptor.d.ts +0 -2
  114. package/dist/offline/cometChatWSInterceptor.d.ts +0 -2
  115. package/dist/offline/connectivity.d.ts +0 -5
  116. package/dist/offline/failedSendingRetry.d.ts +0 -4
  117. package/dist/offline/index.d.ts +0 -10
  118. package/dist/offline/offlineStoreLocalStorage.d.ts +0 -32
  119. package/dist/offline/types.d.ts +0 -69
  120. package/dist/vite.svg +0 -1
  121. package/dist/vue-bcc-chat-ui.css +0 -1
  122. package/src/components/BccAttachmentBox.vue +0 -133
  123. package/src/components/BccAttachmentPreview.vue +0 -57
  124. package/src/components/BccChatMessageBubble.vue +0 -219
  125. package/src/components/BccChatMessageList.vue +0 -488
  126. package/src/components/BccChatMessages.vue +0 -212
  127. package/src/components/BccChatSendButton.vue +0 -91
  128. package/src/components/BccCometChatFullScreenViewer.vue +0 -118
  129. package/src/components/BccFileBubble.vue +0 -137
  130. package/src/components/BccImageBubble.vue +0 -75
  131. package/src/components/BccReplyBox.vue +0 -141
  132. package/src/components/BccReplyPreview.vue +0 -113
  133. package/src/components/BccScheduledMessageIcon.vue +0 -65
  134. package/src/components/BccScheduledMessageModal.vue +0 -70
  135. package/src/components/BccScheduledMessages.vue +0 -125
  136. package/src/components/BccScheduledSendButton.vue +0 -118
  137. /package/dist/{components/BccScheduledMessageIcon.vue.d.ts → FixtureApp.vue.d.ts} +0 -0
@@ -1 +0,0 @@
1
- .cc__imageviewer__full-screen-viewer[data-v-1563719d]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;z-index:10000}.cc__imageviewer__zoom-container[data-v-1563719d]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}.cc__imageviewer__loading[data-v-1563719d]{position:absolute;z-index:-1}img[data-v-1563719d]{max-width:100%;max-height:100%}.cc__imageviewer-option[data-v-1563719d]{position:fixed;cursor:pointer;z-index:10001;padding:10px}.cc__imageviewer-option--close[data-v-1563719d]{top:0;right:0;margin-top:env(safe-area-inset-top)}.cc__imageviewer-option--download[data-v-1563719d]{top:0;left:0;margin-top:env(safe-area-inset-top)}.bcc-image_container[data-v-4640fa7a]{max-height:300px;justify-content:center;overflow:hidden;border-radius:10px;isolation:isolate;min-height:28px;min-width:84px}.bcc-image_container img[data-v-4640fa7a]{max-height:500px;max-width:400px;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;position:relative}.bcc-image_container .placeholder[data-v-4640fa7a]:before{content:"⌛"}.bcc__reply_preview__content_wrapper[data-v-47aca85f]{padding:0 12px;position:relative;display:grid;justify-content:start}.bcc__reply_preview__content_bar[data-v-47aca85f]{position:absolute;top:0;bottom:0;border-radius:25px}.bcc__reply_preview__content[data-v-47aca85f]{grid-column:2}.bcc__reply_preview__content>p[data-v-47aca85f]{margin:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:8;word-break:break-all}.bcc__reply_preview__content>.bcc__reply_preview__title[data-v-47aca85f]{margin-bottom:2px}.bcc__reply_preview__thumbnail[data-v-47aca85f]{grid-column:1;width:2rem;height:2rem;align-self:center;border-radius:3px;overflow:hidden;margin-right:5px}.bcc__reply_preview__thumbnail>img[data-v-47aca85f]{width:100%;height:100%}.bcc-chat-img-msg-bubble{display:block;width:-moz-max-content;width:max-content;max-width:100%;margin:0 auto;border-radius:8px;padding-bottom:8px;position:relative}.bcc-chat-img-msg-bubble:last-child{padding-bottom:0}.bcc-chat-msg-bubble{padding:0 12px 8px;width:auto;max-width:500px;line-height:1.2;font:400 14px Archivo,sans-serif,Inter;color:var(--cc__text-color)}.bcc-chat-msg-bubble:first-child{padding-top:8px}.bcc-chat-msg-bubble p{color:var(--cc__text-color);line-height:1.2;word-break:break-word;text-align:left;white-space:normal;margin:8px 0}.bcc-chat-msg-bubble p:first-child{margin-top:0}.bcc-chat-msg-bubble p:last-child{margin-bottom:0}.bcc-chat-msg-bubble h1{font-size:1.6em;font-weight:800}.bcc-chat-msg-bubble h2{font-size:1.4em;font-weight:700}.bcc-chat-msg-bubble h3{font-size:1.2em;font-weight:600}.bcc-chat-msg-bubble h4{font-size:1em;font-weight:500}.bcc-chat-msg-bubble a{color:var(--cc__link-color);text-decoration:underline;font-weight:500}.bcc-chat-msg-bubble ul{padding-left:16px;list-style:disc;margin:8px 0}.bcc-chat-msg-bubble ol{padding-left:16px;list-style:decimal;margin:8px 0}.bcc-chat-msg-bubble--translated{border-top:1px solid;opacity:.8}.bcc-chat-msg-bubble--translated:before{content:"original: ";opacity:.8;margin-bottom:8px;font-size:12px;display:block}.bcc-chat-msg-bubble--reply{position:relative;z-index:0;margin-top:3px;border-radius:6px;overflow:hidden}.bcc-chat-msg-bubble--reply:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;opacity:.5;z-index:-1;background-color:var(--cc__background)}.bcc__reply_box[data-v-185d4e0a]{padding:8px;display:flex;flex-direction:row;justify-content:space-between;margin:0;min-height:30px}.bcc__reply_preview__close[data-v-185d4e0a]{width:14px;height:14px;display:inline-block}.cc-callscreen__view[data-v-c2b939da],.cc-outgoingcall__wrapper[data-v-f7ff9c81],.cc-call-buttons__wrapper[data-v-af549764]{height:100%;width:100%}.cc-callbuttons-buttons[data-v-af549764]{display:flex;gap:8px}.cc-incomingcall__wrapper[data-v-4528fb51]{position:absolute;left:8px;top:8px;height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;min-height:104px;min-width:230px;z-index:100;display:flex;flex-direction:column;justify-content:flex-start;gap:8px;align-items:flex-start}.cc-incomingcall-buttons[data-v-4528fb51]{display:flex;gap:8px}.cc-incomingcall__tailview[data-v-4528fb51]{position:relative}.cc-incomingcall__subtitleview[data-v-4528fb51]{display:flex;align-items:center;justify-content:flex-start;gap:6px}.cc-incomingcall__listitem[data-v-4528fb51]{width:100%;margin-left:-4px}*[data-v-baae0487]{box-sizing:border-box}.cc-list__section[data-v-baae0487]{margin-left:8px}.cc-list__list[data-v-baae0487]::-webkit-scrollbar{background:transparent;width:8px}.cc-list__list[data-v-baae0487]::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-users[data-v-5dfb076b]{overflow:hidden}.cc-users__menus[data-v-5dfb076b]{position:absolute;top:12px;right:12px;cursor:pointer}.cc-add-members__back-button[data-v-0d5d72e4]{position:absolute;left:8px;padding:12px 8px 8px}.cc-add-members__close-button[data-v-0d5d72e4]{position:absolute;right:8px;padding:12px 8px 8px}.cc-users[data-v-0d5d72e4]{height:90%}.cc-add-members__buttons[data-v-0d5d72e4]{height:10%;width:100%;display:flex;align-items:center;justify-content:center}.cc-add-members__buttons-add[data-v-0d5d72e4]{height:42px;width:100%}.cc-banned-members__back[data-v-b1a66727]{position:absolute;left:8px;padding:12px 8px 8px}.cc-banned-members__close-button[data-v-b1a66727]{position:absolute;right:8px;padding:12px 8px 8px}.cc-banned-members__tail-view[data-v-b1a66727]{position:relative}.cc-banned-members__menus[data-v-b1a66727]{position:absolute;right:12px;cursor:pointer}.cc-banned-members__unban[data-v-b1a66727]{display:flex;align-items:center;justify-content:flex-end}.tail__view[data-v-aa2f984d]{display:flex;flex-direction:column;justify-content:flex-start;align-items:center}.cc-conversations__menus[data-v-aa2f984d]{position:absolute;right:12px;cursor:pointer}.cc-conversations__default-subtitle-view[data-v-aa2f984d]{display:flex;align-items:center;width:90%;flex-direction:column;justify-content:flex-start}.cc-conversations__subtitle[data-v-aa2f984d]{display:flex;justify-content:flex-start;width:100%;align-items:center;min-height:22px}.cc-conversations__thread-view[data-v-aa2f984d]{height:12px;display:flex;justify-content:flex-start;width:100%;align-items:center}.cc-conversations__subtitle-text[data-v-aa2f984d]{text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.cc-conversations__badge[data-v-aa2f984d]{display:flex}.cc-context-menu[data-v-f27fb8d8]{position:relative}.cc-context-menu__sub-menu[data-v-f27fb8d8]{list-style-type:none;display:flex;position:absolute;flex-direction:column;justify-content:flex-start;align-items:flex-start;border:1px solid #e8e8e8;z-index:3;padding:0;border-radius:8px;min-width:-moz-fit-content;min-width:fit-content;width:100%;max-width:200px}.cc-context-menu__submenu-wrapper[data-v-f27fb8d8]{position:absolute;right:0;width:100%;height:100%}.cc-submenu-bottom .cc-context-menu__sub-menu[data-v-f27fb8d8]{top:100%;margin-top:1px}.cc-submenu-top .cc-context-menu__sub-menu[data-v-f27fb8d8]{bottom:100%;margin-bottom:1px}.hidden[data-v-15dad0f0]{display:none!important}*[data-v-15dad0f0]{box-sizing:border-box}.cc-messagebubble-wrapper[data-v-15dad0f0]{position:relative;width:100%}.cc-messagebubble-wrapper__container[data-v-15dad0f0]{padding-right:8px;border-radius:inherit;display:flex;height:-moz-fit-content;height:fit-content;width:-moz-fit-content;width:fit-content;max-width:60%}.cc-messagebubble-wrapper__messagebubble[data-v-15dad0f0]{flex:1 1 0;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-end;min-width:0;padding:8px 2px;border-radius:inherit}.cc-messagebubble-wrapper__avatar[data-v-15dad0f0]{position:relative;border-radius:inherit;display:flex;flex-direction:column;justify-content:flex-start;align-items:flex-end;padding:8px 4px;margin-top:5px}.cc-messagebubble-title[data-v-15dad0f0]:empty:before{display:none}.cc-messagebubble-title[data-v-15dad0f0]:empty:after{display:block;width:100%;height:20px;padding:0 8px}.cc-messagebubble-wrapper__content[data-v-15dad0f0]{display:flex;flex-direction:column;border-radius:8px}.cc__messagelist__threadreplies[data-v-15dad0f0]{min-width:-moz-fit-content;min-width:fit-content}.cc-messagebubble-wrapper__messageoptions[data-v-15dad0f0]{position:absolute;top:-4px;display:flex;align-items:center;justify-content:flex-end;z-index:1}.cc-message-information__close-button[data-v-1a622417]{position:absolute;right:15px}.cc-message-information__body[data-v-1a622417]{padding:20px 3%;box-sizing:border-box}.cc-message-information__default-subtitle-view[data-v-1a622417]{display:flex;align-items:self-end;width:90%;flex-direction:column;justify-content:flex-start}.cc-message_information__subtitle[data-v-1a622417]{display:flex;justify-content:space-between;width:100%;align-items:center;height:20px}.cc-conversations__date[data-v-1a622417]{display:flex;justify-content:flex-start;align-items:center;height:20px}.cc_message-information__body_message-bubble[data-v-1a622417]{display:flex}.cc-message_information__receipt-container[data-v-1a622417]{display:flex;align-items:center}.cc_message-information_empty-state-view[data-v-1a622417]{display:flex;align-items:flex-start;justify-content:center;margin-top:20px}.cc-messagelist[data-v-c0f584eb]{height:100%;width:100%;overflow-y:auto}.cc-messagelist__wrapper[data-v-c0f584eb]{height:100%;width:100%;padding:8px;overflow-y:hidden}.cc-messagelist__bubblefooter[data-v-c0f584eb]{display:flex;justify-content:center;align-items:center}.cc-messagelist__date__container[data-v-c0f584eb]{text-align:center;margin:8px}.cc-messagelist__date[data-v-c0f584eb]{border-radius:10px}.cc-messagelist__messageindicator[data-v-c0f584eb]{position:absolute;bottom:20px;left:50%;transform:translate(-50%);height:25px;width:150px;display:flex;justify-content:center;align-items:center;z-index:10}.cc-messagelist__footerview[data-v-c0f584eb]{z-index:10;position:relative;bottom:5%;display:flex;align-items:center;justify-content:center;width:100%}.cc-messagelist__decoratormessage[data-v-c0f584eb]{margin:0;line-height:30px;word-wrap:break-word;padding:0 8px;width:100%;overflow:hidden;display:flex;align-items:center;justify-content:center;height:100%}.cc-messagelist[data-v-c0f584eb]::-webkit-scrollbar{background:transparent;width:8px}.cc-messagelist[data-v-c0f584eb]::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}.cc-messagelist__message-information[data-v-c0f584eb]{height:620px;width:360px}.cc-group-members[data-v-baa35320]{overflow:hidden}.cc-group-members__back[data-v-baa35320]{position:absolute;left:8px;padding:12px 8px 8px}.cc-group-members__wrapper[data-v-baa35320]{height:100%;padding:8px;width:100%}.cc-group-members__close[data-v-baa35320]{position:absolute;right:8px;padding:12px 8px 8px}.cc-group-members__tail-view[data-v-baa35320]{position:relative;display:flex;gap:8px;justify-content:flex-end;align-items:center}.cc-group-members__menus[data-v-baa35320]{position:absolute;right:12px;cursor:pointer}.cc-user-member-wrapper_component[data-v-14014a3f]{max-height:196px;overflow:hidden;width:100%;box-sizing:border-box;min-height:45px;margin-top:10px}.cc-messagecomposer-wrapper__sendbutton[data-v-0c2c15e3],.cc-messagecomposer-wrapper__livereaction[data-v-0c2c15e3]{margin:0 5px}.cc-messagecomposer-wrapper[data-v-0c2c15e3]{height:100%;width:100%;position:relative;text-align:left;padding:16px 14px;box-sizing:border-box}.cc-messagecomposer-wrapper__headerview[data-v-0c2c15e3]{height:-moz-fit-content;height:fit-content;width:100%;bottom:120%;position:relative;z-index:2;padding:0 0 1px}.cc-messagecomposer__mentions[data-v-0c2c15e3]{height:196px;max-height:196px;min-height:28px;overflow:hidden;position:absolute;width:100%;box-sizing:border-box;left:50%;transform:translate(-50%,-100%);display:flex!important;flex-direction:column!important;justify-content:flex-end!important;z-index:2;padding:3px 16px 1px 14px}.cc-messagecomposer__mentions[data-v-0c2c15e3]::-webkit-scrollbar{display:none}.cc-messagecomposer-mediainput[data-v-0c2c15e3]{display:none}.cc-messagecomposer-wrapper__auxilary[data-v-0c2c15e3]{display:flex;gap:8px}.cc-messagecomposer__mentions-limit-exceeded[data-v-0c2c15e3]{margin-top:20px;left:2px;position:relative;padding-left:13px;background-color:#fff}*[data-v-8f8bcec3]{box-sizing:border-box;margin:0;padding:0}.cc-threadedmessages-wrapper[data-v-8f8bcec3]{display:flex;flex-direction:column;height:90%;overflow-y:hidden;scrollbar-width:none}.cc-threadedmessages-wrapper__header[data-v-8f8bcec3]{width:100%;display:flex;padding:16px;align-items:flex-start}.cc-threadedmessages-wrapper__close[data-v-8f8bcec3]{display:flex;align-items:center}.cc-threadedmessages-wrapper__title[data-v-8f8bcec3]{display:flex;align-items:center;justify-content:center;width:100%}.cc-threadedmessages-wrapper__bubbleview[data-v-8f8bcec3]{width:100%;height:-moz-fit-content;height:fit-content;padding:8px 16px;box-sizing:border-box;max-height:20em;overflow:auto;min-height:100px}.cc-threadedmessages-wrapper__header[data-v-8f8bcec3]{flex:0 0 auto}.cc-threadedmessages-wrapper__list[data-v-8f8bcec3]{height:100%;overflow-y:auto;width:100%}.cc-threadedmessages-wrapper__composer[data-v-8f8bcec3]{position:absolute;flex:0 0 auto;min-height:80px;z-index:1;width:100%;bottom:5px}.cc-threaded_message_main_wrapper[data-v-8f8bcec3]{width:100%;height:calc(100% - 156px);display:flex;flex-direction:column}.cc__threadedmessages__actionview[data-v-8f8bcec3]{height:36px;padding:8px 16px;box-sizing:border-box;border:1px solid rgba(20,20,20,.08);border-left:none}.cc-messageheader__wrapper[data-v-9dff636e]{display:flex;align-items:center;justify-content:space-between;flex-direction:row;box-sizing:border-box}.cc-messageheader__backbutton[data-v-9dff636e]{margin-right:8px}.cc-messageheader[data-v-9dff636e]{display:flex;align-items:center;justify-content:flex-start;height:-moz-fit-content;height:fit-content;width:100%}.cc-messageheader__listitem[data-v-9dff636e]{height:100%;width:100%;align-items:center;justify-content:flex-start}.cc-messageheader__menu[data-v-9dff636e]{width:-moz-fit-content;width:fit-content;display:flex;align-items:center;justify-content:flex-end;padding:12px}.cc-transfer-ownership__members[data-v-dc105c9f]{width:100%;height:85%}.cc-transfer-ownership-buttons[data-v-dc105c9f]{width:100%;height:15%;display:flex;flex-direction:column;justify-content:flex-end;align-content:center;gap:10px;padding:12px 16px 28px;box-sizing:border-box}*[data-v-01b6d33d]{box-sizing:border-box;margin:0;padding:0}.cc-details__wrapper[data-v-01b6d33d]{padding:8px;border-radius:5px;height:100%;position:relative}.cc-details__profile[data-v-01b6d33d]{margin-bottom:50px;height:8%}.cc-details__section-list[data-v-01b6d33d]{height:84%;width:100%;overflow-y:auto;overflow-x:hidden}.cc-details__header[data-v-01b6d33d]{display:flex;justify-content:center;align-items:center;margin-bottom:30px}.cc-details__close-button[data-v-01b6d33d]{position:absolute;right:20px}.cc-details__section[data-v-01b6d33d]{margin-bottom:32px}.cc-details__section-separator[data-v-01b6d33d]{margin-bottom:16px;padding-left:6px;height:5%}.cc-details__options-wrapper[data-v-01b6d33d]{list-style:none;padding:0;display:flex;flex-direction:column;gap:8px}.cc-details__option[data-v-01b6d33d]{display:flex;flex-direction:column;justify-content:space-evenly;min-height:50px}.cc-details__option-title[data-v-01b6d33d]{padding-bottom:12px;display:flex;align-items:center;justify-content:space-between}.cc-details__view[data-v-01b6d33d]{position:absolute;top:0;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-details__section-list[data-v-01b6d33d]::-webkit-scrollbar{background:transparent;width:8px}.cc-details__section-list[data-v-01b6d33d]::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}*[data-v-5f4594b3]{box-sizing:border-box;margin:0;padding:0}.cc-messages-wrapper[data-v-5f4594b3]{display:flex;position:relative;height:100%;width:100%}.cc-messages-wrapper__messages[data-v-5f4594b3]{display:flex;flex-direction:column;position:relative;width:100%;box-sizing:border-box;justify-content:space-between}.cc-messages-wrapper__threadedmessages[data-v-5f4594b3],.cc-messages-wrapper__details[data-v-5f4594b3]{position:absolute;top:5;left:0;height:100%;width:100%;max-height:100%;overflow-y:auto;overflow-x:hidden;max-width:100%;z-index:1}.cc-messages-wrapper__header[data-v-5f4594b3]{width:100%}.cc-messages-wrapper__messages-list[data-v-5f4594b3]{display:flex;flex-direction:column;overflow:hidden;height:calc(100% - 160px);width:100%;height:100%;position:relative}CometChatThreadedMessages[data-v-5f4594b3]{height:100%;display:flex}.cc-messages-wrapper__composer[data-v-5f4594b3]{width:100%;display:flex;flex-direction:column;justify-content:flex-end}.cc-groups__menus[data-v-6d8318f4]{position:absolute;right:12px;cursor:pointer;padding-right:12px}.cc-groups__subtitle-view[data-v-6d8318f4]{padding:0 0 5px}.cc-tabs-wrapper[data-v-82731b07]{height:100%;width:100%;display:flex;flex-direction:column;justify-content:flex-end}.cc-tabs-wrapper_inner-div[data-v-82731b07]{height:100%;width:100%}.cc-tabs-wrapper-fixed_inner-div[data-v-82731b07]{margin-top:10px;height:80%;overflow:hidden}.cc-tabs-wrapper-fixed[data-v-82731b07]{height:100%;width:100%;display:flex;justify-content:center}.cc-tabs-wrapper-fixed-inner[data-v-82731b07]{height:100%;width:70%}.cc-tabs-fixed[data-v-82731b07]{top:0;left:0;width:100%}.cc-contacts__wrapper[data-v-48dc5692]{display:flex;flex-direction:column;height:100%;width:100%;position:relative}.cc-contacts__header[data-v-48dc5692]{display:flex;justify-content:center;align-items:center;height:50px;width:100%;box-sizing:border-box;padding:10px}.cc-contacts__close-button[data-v-48dc5692]{position:absolute;right:20px}.cc-contacts__content[data-v-48dc5692]{overflow-y:auto;padding:10px;box-sizing:border-box;width:100%}.cc-contacts__submit-button[data-v-48dc5692]{position:absolute;bottom:10px;width:100%;display:flex;justify-content:center;box-sizing:border-box;margin:10px}.cc-withmessages__wrapper[data-v-120f8cfb]{display:flex;height:100%;width:100%;box-sizing:border-box}.cc-withmessages__sidebar[data-v-120f8cfb]{width:280px;height:100%;position:relative;display:flex}.cc-withmessages__main[data-v-120f8cfb]{width:calc(100% - 280px);height:100%;margin-left:2px}.mobile[data-v-120f8cfb]{width:100%!important;height:100%;position:relative}.cc-decorator__message-empty[data-v-120f8cfb]{display:flex;justify-content:center;align-items:center;width:calc(100% - 280px)}.cc-withmessages__menus[data-v-120f8cfb]{display:flex;justify-content:flex-end;position:absolute;top:1%;right:2%}.cc-withmessages-wrapper[data-v-84c0352a]{display:flex;height:100%;width:100%;box-sizing:border-box}.cc-withmessages__sidebar[data-v-84c0352a]{width:280px;height:100%;position:relative}.cc-withmessages__main[data-v-84c0352a]{width:calc(100% - 280px);height:100%;margin-left:2px}.mobile[data-v-84c0352a]{width:100%!important;height:100%;position:relative}.cc__decorator__message--empty[data-v-84c0352a]{display:flex;justify-content:center;align-items:center;width:calc(100% - 280px)}.cc-withmessages__joingroup[data-v-84c0352a]{width:calc(100% - 280px);height:100vh}.cc-decorator-message-empty[data-v-84c0352a]{display:flex;justify-content:center;align-items:center;width:calc(100% - 280px)}.cc-withmessages-wrapper[data-v-198b5352]{display:flex;height:100%;width:100%;box-sizing:border-box}.cc-withmessages__sidebar[data-v-198b5352]{width:280px;height:100%;position:relative}.cc-withmessages__main[data-v-198b5352]{width:calc(100% - 280px);height:100%;margin-left:2px}.mobile[data-v-198b5352]{width:100%!important;height:100%;position:relative}.cc-decorator-message-empty[data-v-198b5352]{display:flex;justify-content:center;align-items:center;width:calc(100% - 280px)}.update-icon-style[data-v-9e6b21b8]{height:24px;width:24px;border:none;border-radius:0;color:var(--cc__primary150, #3F4669);background:transparent;cursor:pointer;margin-right:-10px}.cc__file__bubble[data-v-8f569cc0]{background:transparent;display:flex;justify-content:space-between;overflow:hidden;width:100%;box-sizing:border-box;gap:8px}.message__block[data-v-8f569cc0]{word-wrap:break-word;text-align:left;overflow:hidden}.cc__file__title[data-v-8f569cc0]{overflow:hidden;overflow-wrap:anywhere}.cc__file__url[data-v-8f569cc0]{all:unset;color:var(--cc__text-color);cursor:pointer}.cc__file__subtitle[data-v-8f569cc0]{margin-top:4px}.cc__file__icon[data-v-8f569cc0]{display:flex;align-items:flex-start;justify-content:flex-end;width:-moz-fit-content;width:fit-content;line-height:36px}.cc__file__icon i[data-v-8f569cc0]{display:inline-block;width:24px;height:24px;cursor:pointer;background:var(--cc__accent)}.bcc__attachment_preview__content_wrapper[data-v-80e86d74]{padding:0 5px 0 20px;position:relative;width:100%}.bcc__attachment_preview__content[data-v-80e86d74]{width:100%;max-height:350px;height:100%;display:flex;justify-content:center;align-items:center}.bcc__attachment_preview__content>img[data-v-80e86d74]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.cc-messagecomposer-wrapper__headerview{position:static!important}.bcc__attachment_box[data-v-cf116bcf]{padding:8px;display:flex;flex-direction:row;justify-content:space-between;margin:0;min-height:30px}.bcc__attachment_preview__close[data-v-cf116bcf]{width:14px;height:14px;display:inline-block}.cc-messagecomposer-wrapper__sendbutton[data-v-854aed21]{margin:0 5px}.title-bar[data-v-492158d0]{display:flex;align-items:center;justify-content:space-between;background:var(--cc__secondary, #111827);padding:.4rem .6rem}.title-bar .title[data-v-492158d0]{color:var(--cc__text-color)}.title-bar .closeIcon[data-v-492158d0]{width:1.2rem;cursor:pointer;color:var(--cc__text-color)}.scheduled-list[data-v-492158d0]{height:calc(100% - 45px)!important}.bcc-chat-message-list-wrapper{position:relative;height:100%}.bcc-chat-message-list{--cc__primary: #cfeac8;--cc__primary150: #004e48;--cc__background: #f3faf7;--cc__secondary: white;--cc__accent: #004e48;--cc__accent50: rgba(62, 142, 117, .04);--cc__accent100: #ffffff;--cc__accent200: rgba(62, 142, 117, .15);--cc__accent300: rgba(62, 142, 117, .24);--cc__accent400: rgba(62, 142, 117, .33);--cc__accent500: rgba(62, 142, 117, .46);--cc__accent600: #004e48;--cc__accent700: #254a40;--cc__accent800: rgba(62, 142, 117, .82);--cc__accent900: #f3faf7;--cc__text-color: #000;--cc__link-color: #57639e}:root.dark .bcc-chat-message-list{--cc__primary: #57639e;--cc__primary150: #57639e;--cc__background: hsl(230, 25%, 15%);--cc__secondary: #111827;--cc__accent: #758abc;--cc__accent50: rgba(98, 116, 174, .24);--cc__accent100: linear-gradient(45deg, #05070b 0%, #0c111c 100%);--cc__accent200: rgba(98, 116, 174, .35);--cc__accent300: rgba(98, 116, 174, .44);--cc__accent400: rgba(98, 116, 174, .53);--cc__accent500: rgba(98, 116, 174, .66);--cc__accent600: #758abc;--cc__accent700: #6274ae;--cc__accent800: rgba(98, 116, 174, .92);--cc__accent900: #090A0B;--cc__text-color: #fff;--cc__link-color: #cfeac8}.bcc-chat-message-list,.bcc-chat-message-list .cc-messages-wrapper .cc-messages-wrapper__messages .cc-messages-wrapper__messages-list{height:100%}.bcc-chat-message-list .cc-messages-wrapper .cc-messages-wrapper__messages .cc-messagecomposer-wrapper__headerview{max-height:100%;margin-bottom:5px}.bcc-chat-message-list .cc-messages-wrapper .cc-messagebubble-wrapper__content{max-width:100%}.bcc-chat-message-list .cc-messages-wrapper .cc-messagebubble-wrapper__content>div>.bcc-message-wrapper.has-text.has-image+div>div>div:not([class]){justify-content:flex-end!important;padding:0 8px 8px!important;margin-top:-5px!important;height:unset!important;border-radius:unset!important;line-height:unset!important;position:unset!important;margin-right:unset!important;background:unset!important}.bcc-chat-message-list .cc-messagebubble-wrapper__container{max-width:80%}.bcc-chat-message-list .cc-messagebubble-wrapper__messageoptions{border-radius:8px}.bcc-chat-message-list .cc-messagebubble-wrapper__messageoptions .cc-context-menu__top-menu{border:1px var(--cc__secondary) solid!important}.bcc-chat-message-list .bcc-chat-message-composer-offline{position:relative;bottom:38px;text-align:center;width:100%;font:500 11px sans-serif}.bcc-chat-message-list .bcc-chat-message-composer-offline span{width:150px;display:inline;padding:4px 6px;color:var(--cc__text-color);background:var(--cc__primary);border-radius:8px}.bcc-chat-message-list.offline .messageinput__primaryactions,.bcc-chat-message-list.offline .messageinput__auxiliaryactions,.bcc-chat-message-list.offline .messageinput__secondaryactions{opacity:.2}.bcc-chat-message-list-offline{position:absolute;top:0;bottom:0;left:0;right:0;display:flex;justify-content:center;align-items:center;font:700 22px sans-serif;color:#bcbcbc}.cc-messagecomposer__emojikeyboard{display:none}.cc-threadedmessages-wrapper__bubbleview::-webkit-scrollbar,.cc__message-list::-webkit-scrollbar{background:transparent;width:8px}.cc-threadedmessages-wrapper__bubbleview::-webkit-scrollbar-thumb,.cc__message-list::-webkit-scrollbar-thumb{background:#e8e5e5;border-radius:8px}
@@ -1,133 +0,0 @@
1
- <script setup lang="ts">
2
- import { CloseIcon } from "@cometchat/chat-uikit-vue";
3
- import {
4
- CometChatMessageEvents,
5
- CometChatTheme,
6
- MessageStatus,
7
- } from "@cometchat/uikit-resources";
8
- import {
9
- getCurrentInstance,
10
- inject,
11
- onBeforeUnmount,
12
- onMounted,
13
- ref,
14
- Ref,
15
- } from "vue";
16
- import { ChatInstance } from "../chat/types";
17
- import BccAttachmentPreview from "./BccAttachmentPreview.vue";
18
-
19
- const props = defineProps({
20
- captionedAttachment: { type: Object },
21
- closeButtonIconURL: { type: String, default: CloseIcon },
22
- previewStyle: { type: Object, default: {} },
23
- });
24
-
25
- const chatInstance = inject<Ref<ChatInstance>>("chatInstance");
26
- const vueInstance: any = getCurrentInstance();
27
- const msgComposerData =
28
- vueInstance?.parent?.type?.name === "CometChatMessageComposer" &&
29
- vueInstance?.parent?.setupState;
30
-
31
- const { theme } = inject("theme", { theme: ref(new CometChatTheme({})) });
32
-
33
- function closePreview(_event?: MouseEvent) {
34
- if (chatInstance) {
35
- chatInstance.value.captionedAttachment = null;
36
- }
37
- }
38
-
39
- const onMessageEditStart = CometChatMessageEvents.ccMessageEdited.subscribe(
40
- ({ status }) => {
41
- if (status === MessageStatus.inprogress) {
42
- if (chatInstance) chatInstance.value.replyToMessage = null;
43
- closePreview();
44
- }
45
- }
46
- );
47
-
48
- const onMessageSend = CometChatMessageEvents.ccMessageSent.subscribe(
49
- ({ status }) => {
50
- if (status === MessageStatus.inprogress) {
51
- closePreview();
52
- }
53
- }
54
- );
55
-
56
- onMounted(() => {
57
- if (msgComposerData) {
58
- msgComposerData.inputRef.querySelector(".messageinput-input").focus();
59
- if (msgComposerData.messageToBeEdited) {
60
- msgComposerData.showPreview = false; // This is only used for edit message preview
61
- msgComposerData.messageToBeEdited = null;
62
- msgComposerData.messageText = "";
63
- msgComposerData.textRef = "";
64
- msgComposerData.inputRef?.emptyInputField();
65
- }
66
- }
67
- });
68
-
69
- onBeforeUnmount(() => {
70
- onMessageEditStart.unsubscribe();
71
- onMessageSend.unsubscribe();
72
- });
73
-
74
- const closeBtnIconStyle = () => {
75
- return {
76
- buttonIconTint: theme.value.palette.getAccent500(),
77
- height: "14px",
78
- width: "14px",
79
- border: "none",
80
- borderRadius: "0",
81
- background: "transparent",
82
- display: "flex",
83
- justifyContent: "center",
84
- alignItems: "center",
85
- };
86
- };
87
-
88
- const wrapperStyle = () => {
89
- return {
90
- background: theme.value.palette.getBackground(),
91
- border: `1px solid ${theme.value.palette.getAccent200()}`,
92
- height: "100%",
93
- width: "100%",
94
- borderRadius: "12px",
95
- };
96
- };
97
- </script>
98
-
99
- <template>
100
- <div class="bcc__attachment_box" :style="wrapperStyle()">
101
- <BccAttachmentPreview
102
- :captionedAttachment="props.captionedAttachment"
103
- :previewStyle="previewStyle"
104
- />
105
- <div class="bcc__attachment_preview__close" @click="closePreview">
106
- <cometchat-button
107
- :buttonStyle="closeBtnIconStyle()"
108
- :iconURL="props.closeButtonIconURL"
109
- ></cometchat-button>
110
- </div>
111
- </div>
112
- </template>
113
-
114
- <style>
115
- .cc-messagecomposer-wrapper__headerview {
116
- position: static !important;
117
- }
118
- </style>
119
- <style scoped>
120
- .bcc__attachment_box {
121
- padding: 8px;
122
- display: flex;
123
- flex-direction: row;
124
- justify-content: space-between;
125
- margin: 0;
126
- min-height: 30px;
127
- }
128
- .bcc__attachment_preview__close {
129
- width: 14px;
130
- height: 14px;
131
- display: inline-block;
132
- }
133
- </style>
@@ -1,57 +0,0 @@
1
- <script setup lang="ts">
2
- import { PlaceholderImage } from '@cometchat/chat-uikit-vue';
3
- import { computed } from 'vue';
4
-
5
- const props = defineProps({
6
- captionedAttachment: { type: Object, default: {} },
7
- previewStyle: { type: Object, default: {} },
8
- });
9
-
10
- const previewUrl = computed(() => {
11
- if (!props.captionedAttachment?.fileObject)
12
- return PlaceholderImage;
13
-
14
- const blob = new Blob([props.captionedAttachment.fileObject]);
15
- return URL.createObjectURL(blob);
16
- });
17
-
18
- function imgLoaded(event: Event) {
19
- if (props.captionedAttachment) {
20
- props.captionedAttachment.dimensions = {
21
- width: (event.target as HTMLImageElement)?.naturalWidth,
22
- height: (event.target as HTMLImageElement)?.naturalHeight
23
- };
24
- }
25
- }
26
- </script>
27
-
28
- <template>
29
- <div class="bcc__attachment_preview__content_wrapper">
30
- <div class="bcc__attachment_preview__content">
31
- <img :src="previewUrl" @load="imgLoaded" />
32
- </div>
33
- </div>
34
- </template>
35
-
36
- <style scoped>
37
- .bcc__attachment_preview__content_wrapper {
38
- padding: 0 5px 0 20px;
39
- position: relative;
40
- width: 100%;
41
- }
42
-
43
- .bcc__attachment_preview__content {
44
- width: 100%;
45
- max-height: 350px;
46
- height: 100%;
47
- display: flex;
48
- justify-content: center;
49
- align-items: center;
50
- }
51
-
52
- .bcc__attachment_preview__content>img {
53
- width: 100%;
54
- height: 100%;
55
- object-fit: contain;
56
- }
57
- </style>
@@ -1,219 +0,0 @@
1
- <script setup lang="ts">
2
- import { BaseMessage, CometChat, MediaMessage, User } from '@cometchat/chat-sdk-javascript';
3
- import { CometChatTheme, fontHelper } from '@cometchat/uikit-resources';
4
- import { inject, ref } from 'vue';
5
- import chat from "../chat";
6
- import { offlineStore } from '../offline';
7
- import BccImageBubble from './BccImageBubble.vue';
8
- import BccReplyPreview from "./BccReplyPreview.vue";
9
-
10
- const props = defineProps({
11
- id: {
12
- type: String,
13
- required: false,
14
- default: ""
15
- },
16
- text: {
17
- type: String,
18
- required: true
19
- },
20
- metadata: {
21
- type: Object
22
- },
23
- guid: {
24
- type: String,
25
- default: ""
26
- },
27
- mentionedUsers: {
28
- type: Array<User>
29
- },
30
- message: {
31
- type: MediaMessage,
32
- default: null
33
- },
34
- placeholderImage: {
35
- type: String,
36
- default: null
37
- },
38
- src: {
39
- type: String,
40
- default: null
41
- }
42
- })
43
-
44
- let parentMsgRef = ref<BaseMessage>();
45
- if (props.metadata?.replyToMessageId) {
46
- let guidString = props.guid?.toString()
47
- let group = offlineStore.getGroup(guidString)
48
-
49
- //for read only replies
50
- if (group != null && group?.hasJoined == undefined) {
51
- let message = offlineStore.getMessage(props.metadata.replyToMessageId).data
52
-
53
- if (message !== undefined) {
54
- if (message.type == CometChat.MESSAGE_TYPE.TEXT) {
55
- let text = new CometChat.TextMessage(message.receiver, message.data.text, message.receiverType)
56
- text.setData(message.data)
57
- parentMsgRef.value = text
58
- } else {
59
- let media = new CometChat.MediaMessage(message.receiver, {}, message.type, message.receiverType)
60
- media.setData(message.data)
61
- parentMsgRef.value = media
62
- }
63
- } else {
64
- parentMsgRef.value = new CometChat.TextMessage("","Cannot load message","")
65
- }
66
- } else {
67
- CometChat.getMessageDetails(props.metadata.replyToMessageId).then((msg: BaseMessage) => parentMsgRef.value = msg).catch(() => parentMsgRef.value = new CometChat.TextMessage("","Unknown message",""));
68
- }
69
- };
70
-
71
- const { theme } = inject("theme", { theme: ref(new CometChatTheme({})) });
72
- const replyPreviewStyle = {
73
- previewWrapperPadding: "6px 12px 6px 9px",
74
- barLeftPosition: "0px",
75
- titleColor: theme.value.palette.getAccent800(),
76
- subtitleColor: theme.value.palette.getAccent800(),
77
- titleFont: fontHelper(theme.value.typography.title2),
78
- };
79
- </script>
80
-
81
- <template>
82
- <div class="bcc-message-wrapper" :class="{'has-text': text, 'has-image': src != null}" >
83
- <div v-if="metadata?.replyToMessageId" class="bcc-chat-msg-bubble">
84
- <div class="bcc-chat-msg-bubble--reply">
85
- <BccReplyPreview
86
- :replyToMessage="parentMsgRef"
87
- :previewStyle="replyPreviewStyle"
88
- />
89
- </div>
90
- </div>
91
- <div v-if="src != null" class="bcc-chat-img-msg-bubble">
92
- <BccImageBubble
93
- :message="message"
94
- :placeholderImage="placeholderImage"
95
- :src="src"
96
- />
97
- </div>
98
- <div v-if="text && metadata && metadata.translated_message" v-html="chat.toMarkdownHtml(metadata.translated_message, mentionedUsers)"
99
- class="bcc-chat-msg-bubble bcc-chat-msg-bubble--translation" />
100
- <div v-if="text" v-html="chat.toMarkdownHtml(text, mentionedUsers)" class="bcc-chat-msg-bubble" :id="id"
101
- :class="{ 'bcc-chat-msg-bubble--translated': metadata && !!metadata.translated_message }" />
102
- </div>
103
- </template>
104
-
105
- <style lang="scss">
106
- .bcc-chat-img-msg-bubble {
107
- display: block;
108
- width: max-content;
109
- max-width: 100%;
110
- margin: 0 auto;
111
- border-radius: 8px;
112
- padding-bottom: 8px;
113
- position: relative;
114
-
115
- &:last-child {
116
- padding-bottom: 0;
117
- }
118
- }
119
- .bcc-chat-msg-bubble {
120
- padding: 0 12px 8px;
121
- width: auto;
122
- max-width: 500px;
123
- line-height: 1.2;
124
- font: 400 14px Archivo, sans-serif, Inter;
125
- color: var(--cc__text-color);
126
-
127
- &:first-child {
128
- padding-top: 8px;
129
- }
130
-
131
- p {
132
- color: var(--cc__text-color);
133
- line-height: 1.2;
134
- word-break: break-word;
135
- text-align: left;
136
- white-space: normal;
137
- margin: 8px 0;
138
- }
139
-
140
- p:first-child {
141
- margin-top: 0;
142
- }
143
-
144
- p:last-child {
145
- margin-bottom: 0;
146
- }
147
-
148
- h1 {
149
- font-size: 1.6em;
150
- font-weight: 800;
151
- }
152
-
153
- h2 {
154
- font-size: 1.4em;
155
- font-weight: 700;
156
- }
157
-
158
- h3 {
159
- font-size: 1.2em;
160
- font-weight: 600;
161
- }
162
-
163
- h4 {
164
- font-size: 1em;
165
- font-weight: 500;
166
- }
167
-
168
- a {
169
- color: var(--cc__link-color);
170
- text-decoration: underline;
171
- font-weight: 500;
172
- }
173
-
174
- ul {
175
- padding-left: 16px;
176
- list-style: disc;
177
- margin: 8px 0;
178
- }
179
-
180
- ol {
181
- padding-left: 16px;
182
- list-style: decimal;
183
- margin: 8px 0;
184
- }
185
-
186
- &--translated {
187
- border-top: 1px solid;
188
- opacity: 0.8;
189
-
190
- &:before {
191
- content: 'original: ';
192
- opacity: 0.8;
193
- margin-bottom: 8px;
194
- font-size: 12px;
195
- display: block;
196
- }
197
- }
198
-
199
- &--reply {
200
- position: relative;
201
- z-index: 0;
202
- margin-top: 3px;
203
- border-radius: 6px;
204
- overflow: hidden;
205
- }
206
-
207
- &--reply::before {
208
- content: "";
209
- position: absolute;
210
- top: 0;
211
- left: 0;
212
- width: 100%;
213
- height: 100%;
214
- opacity: .5;
215
- z-index: -1;
216
- background-color: var(--cc__background);
217
- }
218
- }
219
- </style>