From 280bc589635c726c32b74ae84c77df3e15415906 Mon Sep 17 00:00:00 2001 From: Sivin Varghese <64252451+iamsivin@users.noreply.github.com> Date: Fri, 21 Mar 2025 14:47:28 +0530 Subject: [PATCH] chore: Update buttons in conversation screens(#11132) # Pull Request Template ### Changes includes * Update send message and add note button image image image image image image image image * Remove Unused component `AnnouncementPopup.vue` * Updated button for custom attributes in conversation sidebar. image image * Update button in custom snooze modal buttons image * Update modal component close button image * Update AI assistant modal and AICTA modal image image * Update remove attachment button image * Update the conversation header buttons image * Update the retry button in old message bubbles. --------- Co-authored-by: Pranav --- .../dashboard/components/CustomAttribute.vue | 50 ++++++----- .../components/CustomSnoozeModal.vue | 21 +++-- app/javascript/dashboard/components/Modal.vue | 9 +- .../components/ui/AnnouncementPopup.vue | 90 ------------------- .../components/widgets/AIAssistanceModal.vue | 24 +++-- .../components/widgets/AICTAModal.vue | 37 ++++++-- .../components/widgets/AttachmentsPreview.vue | 10 ++- .../widgets/AutomationActionInput.vue | 11 ++- .../components/widgets/FilterInput/Index.vue | 8 +- .../widgets/WootWriter/ReplyBottomPanel.vue | 20 ++--- .../conversation/ConversationHeader.vue | 31 ++++--- .../widgets/conversation/Message.vue | 13 +-- 12 files changed, 145 insertions(+), 179 deletions(-) delete mode 100644 app/javascript/dashboard/components/ui/AnnouncementPopup.vue diff --git a/app/javascript/dashboard/components/CustomAttribute.vue b/app/javascript/dashboard/components/CustomAttribute.vue index b86d5e0ba..a6bbbcf18 100644 --- a/app/javascript/dashboard/components/CustomAttribute.vue +++ b/app/javascript/dashboard/components/CustomAttribute.vue @@ -9,12 +9,15 @@ import { getRegexp } from 'shared/helpers/Validators'; import { useVuelidate } from '@vuelidate/core'; import { emitter } from 'shared/helpers/mitt'; +import NextButton from 'dashboard/components-next/button/Button.vue'; + const DATE_FORMAT = 'yyyy-MM-dd'; export default { components: { MultiselectDropdown, HelperTextPopup, + NextButton, }, props: { label: { type: String, required: true }, @@ -219,14 +222,13 @@ export default { class="mt-0.5" /> - @@ -246,10 +248,10 @@ export default { @keyup.enter="onUpdate" />
-
@@ -281,25 +283,27 @@ export default { > {{ displayValue || '---' }}

-
- +
diff --git a/app/javascript/dashboard/components/CustomSnoozeModal.vue b/app/javascript/dashboard/components/CustomSnoozeModal.vue index 3d4790bf5..c6d2d5f2c 100644 --- a/app/javascript/dashboard/components/CustomSnoozeModal.vue +++ b/app/javascript/dashboard/components/CustomSnoozeModal.vue @@ -1,9 +1,11 @@ - - - - diff --git a/app/javascript/dashboard/components/widgets/AIAssistanceModal.vue b/app/javascript/dashboard/components/widgets/AIAssistanceModal.vue index fc430f775..395d49334 100644 --- a/app/javascript/dashboard/components/widgets/AIAssistanceModal.vue +++ b/app/javascript/dashboard/components/widgets/AIAssistanceModal.vue @@ -2,10 +2,12 @@ import { useMessageFormatter } from 'shared/composables/useMessageFormatter'; import { useAI } from 'dashboard/composables/useAI'; import AILoader from './AILoader.vue'; +import NextButton from 'dashboard/components-next/button/Button.vue'; export default { components: { AILoader, + NextButton, }, props: { aiOption: { @@ -84,16 +86,22 @@ export default {
- - {{ + - {{ + " + @click.prevent="onClose" + /> +
diff --git a/app/javascript/dashboard/components/widgets/AICTAModal.vue b/app/javascript/dashboard/components/widgets/AICTAModal.vue index b5ea52614..13e201326 100644 --- a/app/javascript/dashboard/components/widgets/AICTAModal.vue +++ b/app/javascript/dashboard/components/widgets/AICTAModal.vue @@ -6,7 +6,12 @@ import { useUISettings } from 'dashboard/composables/useUISettings'; import { useAI } from 'dashboard/composables/useAI'; import { OPEN_AI_EVENTS } from 'dashboard/helper/AnalyticsHelper/events'; +import NextButton from 'dashboard/components-next/button/Button.vue'; + export default { + components: { + NextButton, + }, emits: ['close'], setup() { @@ -94,16 +99,30 @@ export default { />
- - {{ $t('INTEGRATION_SETTINGS.OPEN_AI.CTA_MODAL.BUTTONS.NEED_HELP') }} - +
- - {{ $t('INTEGRATION_SETTINGS.OPEN_AI.CTA_MODAL.BUTTONS.DISMISS') }} - - - {{ $t('INTEGRATION_SETTINGS.OPEN_AI.CTA_MODAL.BUTTONS.FINISH') }} - + +
diff --git a/app/javascript/dashboard/components/widgets/AttachmentsPreview.vue b/app/javascript/dashboard/components/widgets/AttachmentsPreview.vue index 69d559509..299a2ad5a 100644 --- a/app/javascript/dashboard/components/widgets/AttachmentsPreview.vue +++ b/app/javascript/dashboard/components/widgets/AttachmentsPreview.vue @@ -2,6 +2,8 @@ import { computed } from 'vue'; import { formatBytes } from 'shared/helpers/FileHelper'; +import Button from 'dashboard/components-next/button/Button.vue'; + const props = defineProps({ attachments: { type: Array, @@ -73,9 +75,11 @@ const fileName = file => {
-
diff --git a/app/javascript/dashboard/components/widgets/AutomationActionInput.vue b/app/javascript/dashboard/components/widgets/AutomationActionInput.vue index 634ae7858..9bc197f25 100644 --- a/app/javascript/dashboard/components/widgets/AutomationActionInput.vue +++ b/app/javascript/dashboard/components/widgets/AutomationActionInput.vue @@ -2,11 +2,14 @@ import AutomationActionTeamMessageInput from './AutomationActionTeamMessageInput.vue'; import AutomationActionFileInput from './AutomationFileInput.vue'; import WootMessageEditor from 'dashboard/components/widgets/WootWriter/Editor.vue'; +import NextButton from 'dashboard/components-next/button/Button.vue'; + export default { components: { AutomationActionTeamMessageInput, AutomationActionFileInput, WootMessageEditor, + NextButton, }, props: { modelValue: { @@ -172,11 +175,11 @@ export default { /> - diff --git a/app/javascript/dashboard/components/widgets/FilterInput/Index.vue b/app/javascript/dashboard/components/widgets/FilterInput/Index.vue index 7b2cb5c13..f6011c4ad 100644 --- a/app/javascript/dashboard/components/widgets/FilterInput/Index.vue +++ b/app/javascript/dashboard/components/widgets/FilterInput/Index.vue @@ -247,7 +247,13 @@ export default { :placeholder="$t('FILTER.INPUT_PLACEHOLDER')" /> - +

{{ errorMessage }} diff --git a/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue b/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue index 9c04232e2..26249e881 100644 --- a/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue +++ b/app/javascript/dashboard/components/widgets/WootWriter/ReplyBottomPanel.vue @@ -164,11 +164,6 @@ export default { 'is-note-mode': this.isNote, }; }, - buttonClass() { - return { - warning: this.isNote, - }; - }, showAttachButton() { return this.showFileUpload || this.isNote; }, @@ -367,14 +362,15 @@ export default { />

- - {{ sendButtonText }} - + />
diff --git a/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue b/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue index 4f6b31721..2213b8a82 100644 --- a/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue +++ b/app/javascript/dashboard/components/widgets/conversation/ConversationHeader.vue @@ -13,6 +13,8 @@ import { snoozedReopenTime } from 'dashboard/helper/snoozeHelpers'; import { FEATURE_FLAGS } from 'dashboard/featureFlags'; import Linear from './linear/index.vue'; +import NextButton from 'dashboard/components-next/button/Button.vue'; + export default { components: { BackButton, @@ -21,6 +23,7 @@ export default { Thumbnail, SLACardLabel, Linear, + NextButton, }, mixins: [inboxMixin], props: { @@ -154,16 +157,18 @@ export default {
- - + {{ currentContact.name }} - + {{ snoozedDisplayText }} - - {{ contactPanelToggleText }} - + />
diff --git a/app/javascript/dashboard/components/widgets/conversation/Message.vue b/app/javascript/dashboard/components/widgets/conversation/Message.vue index 0cccde65a..6a98fe42f 100644 --- a/app/javascript/dashboard/components/widgets/conversation/Message.vue +++ b/app/javascript/dashboard/components/widgets/conversation/Message.vue @@ -25,6 +25,8 @@ import * as Sentry from '@sentry/vue'; import { useTrack } from 'dashboard/composables'; import { emitter } from 'shared/helpers/mitt'; +import NextButton from 'dashboard/components-next/button/Button.vue'; + export default { components: { BubbleActions, @@ -40,6 +42,7 @@ export default { InstagramStory, InstagramStoryReply, Spinner, + NextButton, }, props: { data: { @@ -452,12 +455,12 @@ export default { v-if="isFailed && !hasOneDayPassed && !isAnEmailInbox" class="message-failed--alert" > -