From 5b77618a430a1fdef44e09ee9fc5c713aea9c097 Mon Sep 17 00:00:00 2001 From: Sojan Date: Wed, 7 May 2025 03:04:51 -0700 Subject: [PATCH] chore: voice debug component --- .../widgets/conversation/MessagesView.vue | 11 + .../widgets/conversation/ReplyBox.vue | 8 +- .../conversation/VoiceTimelineView.vue | 646 ++++++++++++++++++ 3 files changed, 664 insertions(+), 1 deletion(-) create mode 100644 app/javascript/dashboard/components/widgets/conversation/VoiceTimelineView.vue diff --git a/app/javascript/dashboard/components/widgets/conversation/MessagesView.vue b/app/javascript/dashboard/components/widgets/conversation/MessagesView.vue index 8d0c77f1b..54408c89f 100644 --- a/app/javascript/dashboard/components/widgets/conversation/MessagesView.vue +++ b/app/javascript/dashboard/components/widgets/conversation/MessagesView.vue @@ -12,6 +12,7 @@ import Message from './Message.vue'; import NextMessageList from 'next/message/MessageList.vue'; import ConversationLabelSuggestion from './conversation/LabelSuggestion.vue'; import Banner from 'dashboard/components/ui/Banner.vue'; +import VoiceTimelineView from './VoiceTimelineView.vue'; // stores and apis import { mapGetters } from 'vuex'; @@ -48,6 +49,7 @@ export default { Banner, ConversationLabelSuggestion, NextButton, + VoiceTimelineView, }, mixins: [inboxMixin], props: { @@ -146,6 +148,9 @@ export default { inbox() { return this.$store.getters['inboxes/getInbox'](this.inboxId); }, + isAVoiceChannel() { + return this.inbox?.channel_type === INBOX_TYPES.VOICE; + }, typingUsersList() { const userList = this.$store.getters[ 'conversationTypingStatus/getUserList' @@ -647,9 +652,15 @@ export default { /> + diff --git a/app/javascript/dashboard/components/widgets/conversation/ReplyBox.vue b/app/javascript/dashboard/components/widgets/conversation/ReplyBox.vue index 4fa83e029..d7086fcec 100644 --- a/app/javascript/dashboard/components/widgets/conversation/ReplyBox.vue +++ b/app/javascript/dashboard/components/widgets/conversation/ReplyBox.vue @@ -66,6 +66,12 @@ export default { WootMessageEditor, }, mixins: [inboxMixin, fileUploadMixin, keyboardEventListenerMixins], + props: { + isPrivateNoteOnly: { + type: Boolean, + default: false, + }, + }, emits: ['update:popoutReplyBox', 'togglePopout'], setup() { const { @@ -102,7 +108,7 @@ export default { recordingAudioState: '', recordingAudioDurationText: '', isUploading: false, - replyType: REPLY_EDITOR_MODES.REPLY, + replyType: REPLY_EDITOR_MODES.NOTE, mentionSearchKey: '', hasSlashCommand: false, bccEmails: '', diff --git a/app/javascript/dashboard/components/widgets/conversation/VoiceTimelineView.vue b/app/javascript/dashboard/components/widgets/conversation/VoiceTimelineView.vue new file mode 100644 index 000000000..d4b1323f4 --- /dev/null +++ b/app/javascript/dashboard/components/widgets/conversation/VoiceTimelineView.vue @@ -0,0 +1,646 @@ + + + + + \ No newline at end of file