From c51a458c252134b98527e95f9d10472b3db00c31 Mon Sep 17 00:00:00 2001 From: Shivam Mishra Date: Thu, 3 Oct 2024 15:02:12 +0530 Subject: [PATCH] style: apply fixes for eslint issues [cw-3590] (#10210) These fixes are all auto generated and can be merged directly Fixes the following issues 1. Event used on components should be hypenated 2. Attribute orders in components 3. Use `unmounted` instead of `destroyed` 4. Add explicit `emits` declarations for components, autofixed [using this script](https://gist.github.com/scmmishra/6f549109b96400006bb69bbde392eddf) We ignore the top level v-if for now, we will fix it later --- .../dashboard/components/ChatList.vue | 30 +- .../dashboard/components/ChatListHeader.vue | 2 +- .../dashboard/components/ConversationItem.vue | 18 +- .../dashboard/components/CustomAttribute.vue | 3 +- .../components/CustomBrandPolicyWrapper.vue | 1 + .../components/CustomSnoozeModal.vue | 1 + .../components/app/PaymentPendingBanner.vue | 3 +- .../app/PendingEmailVerificationBanner.vue | 3 +- .../dashboard/components/app/UpdateBanner.vue | 1 + .../components/app/UpgradeBanner.vue | 3 +- .../dashboard/components/layout/Sidebar.vue | 21 +- .../sidebarComponents/AccountContext.vue | 2 + .../sidebarComponents/AccountSelector.vue | 2 +- .../sidebarComponents/AddAccountModal.vue | 1 + .../layout/sidebarComponents/AgentDetails.vue | 1 + .../sidebarComponents/NotificationBell.vue | 2 + .../layout/sidebarComponents/OptionsMenu.vue | 6 + .../layout/sidebarComponents/Primary.vue | 11 +- .../layout/sidebarComponents/Secondary.vue | 5 +- .../SecondaryChildNavItem.vue | 5 +- .../sidebarComponents/SecondaryNavItem.vue | 1 + .../components/ui/AnnouncementPopup.vue | 1 + .../dashboard/components/ui/Banner.vue | 1 + .../components/ui/DatePicker/DatePicker.vue | 14 +- .../DatePicker/components/CalendarFooter.vue | 2 +- .../DatePicker/components/CalendarMonth.vue | 2 +- .../ui/DatePicker/components/CalendarWeek.vue | 2 +- .../components/ui/DateRangePicker.vue | 1 + .../components/ui/DateTimePicker.vue | 1 + .../components/ui/Dropdown/DropdownList.vue | 2 +- .../dashboard/components/ui/Label.vue | 1 + .../components/widgets/AIAssistanceButton.vue | 3 +- .../widgets/AIAssistanceCTAButton.vue | 2 + .../components/widgets/AIAssistanceModal.vue | 1 + .../components/widgets/AICTAModal.vue | 2 + .../widgets/AutomationFileInput.vue | 1 + .../components/widgets/ChannelItem.vue | 1 + .../components/widgets/ColorPicker.vue | 3 +- .../components/widgets/DashboardApp/Frame.vue | 1 + .../components/widgets/FeatureToggle.vue | 1 + .../components/widgets/FilterInput/Index.vue | 1 + .../components/widgets/InboxName.vue | 2 +- .../components/widgets/TableFooter.vue | 5 +- .../components/widgets/VideoCallButton.vue | 1 + .../widgets/WootWriter/ReplyBottomPanel.vue | 24 +- .../widgets/WootWriter/ReplyTopPanel.vue | 1 + .../WootWriter/keyboardEmojiSelector.vue | 2 +- .../widgets/conversation/CannedResponse.vue | 3 +- .../ConversationAdvancedFilter.vue | 5 +- .../conversation/ConversationBasicFilter.vue | 5 +- .../widgets/conversation/ConversationBox.vue | 5 +- .../widgets/conversation/ConversationCard.vue | 21 +- .../conversation/ConversationHeader.vue | 1 + .../widgets/conversation/FilterItem.vue | 1 + .../widgets/conversation/Message.vue | 3 +- .../widgets/conversation/MessagesView.vue | 1 + .../widgets/conversation/MoreActions.vue | 2 +- .../widgets/conversation/PriorityMark.vue | 1 + .../widgets/conversation/ReplyBox.vue | 38 +- .../widgets/conversation/ReplyToMessage.vue | 1 + .../widgets/conversation/VariableList.vue | 3 +- .../WhatsappTemplates/TemplateParser.vue | 1 + .../WhatsappTemplates/TemplatesPicker.vue | 1 + .../widgets/conversation/bubble/Image.vue | 1 + .../conversation/bubble/ImageAudioVideo.vue | 1 + .../conversation/bubble/InstagramStory.vue | 1 + .../conversation/bubble/Integration.vue | 1 + .../widgets/conversation/bubble/MailHead.vue | 1 + .../conversation/bubble/TranslateModal.vue | 1 + .../widgets/conversation/bubble/Video.vue | 1 + .../conversation/components/SLACardLabel.vue | 1 + .../conversation/contextMenu/Index.vue | 8 + .../conversation/LabelSuggestion.vue | 1 + .../conversationBulkActions/AgentSelector.vue | 1 + .../conversationBulkActions/Index.vue | 14 +- .../conversationBulkActions/LabelActions.vue | 1 + .../conversationBulkActions/TeamActions.vue | 2 + .../widgets/conversation/linear/Issue.vue | 2 +- .../widgets/conversation/linear/LinkIssue.vue | 2 +- .../widgets/conversation/linear/index.vue | 2 +- .../widgets/forms/AvatarUploader.vue | 1 + .../widgets/modal/WootKeyShortcutModal.vue | 2 + .../modules/contact/ContactMergeModal.vue | 1 + .../contact/components/ContactAttribute.vue | 1 + .../contact/components/ContactFields.vue | 1 + .../contact/components/ContactIntro.vue | 1 + .../contact/components/ContactPanel.vue | 2 +- .../contact/components/MergeContact.vue | 9 +- .../components/MergeContactSummary.vue | 1 + .../components/MessageContextMenu.vue | 1 + .../modules/notes/components/ContactNote.vue | 1 + .../modules/notes/components/NoteList.vue | 1 + .../modules/search/components/ReadMore.vue | 1 + .../search/components/SearchHeader.vue | 2 + .../modules/search/components/SearchTabs.vue | 1 + .../modules/search/components/SearchView.vue | 2 +- .../dashboard/routes/dashboard/Dashboard.vue | 16 +- .../commands/CmdBarConversationSnooze.vue | 2 +- .../contacts/components/AddReminder.vue | 1 + .../contacts/components/ContactInfoPanel.vue | 4 +- .../components/ContactsAdvancedFilters.vue | 5 +- .../contacts/components/ContactsView.vue | 28 +- .../dashboard/contacts/components/Header.vue | 11 + .../contacts/components/ReminderItem.vue | 1 + .../contacts/components/SectionHeader.vue | 2 + .../contacts/components/TimelineCard.vue | 1 + .../conversation/ConversationView.vue | 6 +- .../conversation/contact/ContactForm.vue | 7 +- .../conversation/contact/ContactInfo.vue | 1 + .../conversation/contact/ConversationForm.vue | 5 +- .../conversation/contact/SocialIcons.vue | 1 + .../contact/WhatsappTemplates.vue | 7 +- .../conversation/search/PopOverSearch.vue | 1 + .../conversation/search/SwitchLayout.vue | 1 + .../dashboard/customviews/AddCustomViews.vue | 1 + .../ArticleSearch/ArticleSearchResultItem.vue | 1 + .../components/ArticleSearch/ArticleView.vue | 1 + .../ArticleSearch/SearchPopover.vue | 1 + .../ArticleSearch/SearchResults.vue | 1 + .../helpcenter/components/ArticleTable.vue | 3 +- .../components/Header/ArticleHeader.vue | 1 + .../components/Header/EditArticleHeader.vue | 1 + .../components/HelpCenterLayout.vue | 20 +- .../helpcenter/components/PortalListItem.vue | 3 +- .../components/PortalListItemTable.vue | 1 + .../helpcenter/components/PortalPopover.vue | 5 +- .../components/PortalSettingsBasicForm.vue | 2 +- .../helpcenter/components/PortalSwitch.vue | 1 + .../helpcenter/components/Sidebar/Sidebar.vue | 2 +- .../components/Sidebar/SidebarHeader.vue | 1 + .../pages/articles/ArticleSettings.vue | 7 + .../helpcenter/pages/articles/EditArticle.vue | 12 +- .../pages/articles/ListAllArticles.vue | 7 +- .../helpcenter/pages/articles/NewArticle.vue | 4 +- .../pages/categories/AddCategory.vue | 5 +- .../pages/categories/CategoryListItem.vue | 1 + .../pages/categories/EditCategory.vue | 5 +- .../pages/categories/NameEmojiInput.vue | 1 + .../pages/portals/EditPortalBasic.vue | 3 +- .../pages/portals/EditPortalCustomization.vue | 1 + .../pages/portals/EditPortalLocales.vue | 2 +- .../pages/portals/ListAllPortals.vue | 4 +- .../pages/portals/PortalCustomization.vue | 1 + .../routes/dashboard/inbox/InboxList.vue | 10 +- .../routes/dashboard/inbox/InboxView.vue | 2 +- .../dashboard/inbox/components/InboxCard.vue | 7 + .../inbox/components/InboxContextMenu.vue | 1 + .../inbox/components/InboxDisplayMenu.vue | 2 + .../inbox/components/InboxItemHeader.vue | 5 +- .../inbox/components/InboxListHeader.vue | 3 +- .../inbox/components/InboxOptionMenu.vue | 1 + .../inbox/components/PaginationButton.vue | 1 + .../components/NotificationPanel.vue | 1 + .../components/NotificationPanelItem.vue | 1 + .../components/NotificationPanelList.vue | 3 +- .../components/NotificationsView.vue | 2 +- .../agentBots/components/AgentBotRow.vue | 1 + .../agentBots/components/CSMLBotEditor.vue | 1 + .../settings/attributes/CustomAttribute.vue | 6 +- .../settings/attributes/EditAttribute.vue | 1 + .../dashboard/settings/auditlogs/Index.vue | 2 +- .../settings/automation/AddAutomationRule.vue | 9 +- .../automation/EditAutomationRule.vue | 9 +- .../dashboard/settings/automation/Index.vue | 4 +- .../billing/components/BillingItem.vue | 1 + .../settings/campaigns/AddCampaign.vue | 1 + .../dashboard/settings/campaigns/Campaign.vue | 2 +- .../settings/campaigns/CampaignCard.vue | 6 +- .../settings/campaigns/CampaignsTable.vue | 1 + .../settings/campaigns/EditCampaign.vue | 1 + .../dashboard/settings/campaigns/Index.vue | 2 +- .../dashboard/settings/inbox/ChannelList.vue | 2 +- .../routes/dashboard/settings/inbox/Index.vue | 4 +- .../inbox/PreChatForm/PreChatFields.vue | 1 + .../settings/inbox/PreChatForm/Settings.vue | 2 +- .../dashboard/settings/inbox/Settings.vue | 4 +- .../settings/inbox/WidgetBuilder.vue | 4 +- .../settings/inbox/components/BusinessDay.vue | 1 + .../components/InboxReconnectionRequired.vue | 4 +- .../components/SenderNameExamplePreview.vue | 1 + .../DashboardApps/DashboardAppModal.vue | 1 + .../integrations/MultipleIntegrationHooks.vue | 1 + .../settings/integrations/NewHook.vue | 1 + .../integrations/SingleIntegrationHooks.vue | 1 + .../integrations/Webhooks/WebhookForm.vue | 1 + .../integrations/Webhooks/WebhookRow.vue | 6 +- .../dashboard/settings/labels/AddLabel.vue | 1 + .../dashboard/settings/labels/EditLabel.vue | 1 + .../dashboard/settings/macros/MacroForm.vue | 7 +- .../dashboard/settings/macros/MacroNode.vue | 2 +- .../dashboard/settings/macros/MacroNodes.vue | 5 +- .../settings/macros/MacroProperties.vue | 5 +- .../dashboard/settings/profile/Index.vue | 6 +- .../settings/profile/UserBasicDetails.vue | 1 + .../dashboard/settings/reports/BotReports.vue | 2 +- .../settings/reports/CsatResponses.vue | 4 +- .../dashboard/settings/reports/Index.vue | 2 +- .../settings/reports/LiveReports.vue | 2 +- .../dashboard/settings/reports/SLAReports.vue | 4 +- .../reports/components/FilterSelector.vue | 13 +- .../reports/components/Filters/Agents.vue | 1 + .../components/Filters/DateGroupBy.vue | 1 + .../reports/components/Filters/Inboxes.vue | 1 + .../reports/components/Filters/Labels.vue | 1 + .../reports/components/Filters/Ratings.vue | 1 + .../reports/components/Filters/Teams.vue | 1 + .../Filters/v3/ActiveFilterChip.vue | 2 +- .../reports/components/ReportFilters.vue | 6 + .../reports/components/SLA/SLAFilter.vue | 15 +- .../components/SLA/SLAReportFilters.vue | 5 +- .../reports/components/SLA/SLATable.vue | 3 +- .../reports/components/WootReports.vue | 8 +- .../routes/dashboard/settings/sla/AddSLA.vue | 1 + .../routes/dashboard/settings/sla/Index.vue | 2 +- .../routes/dashboard/settings/sla/SlaForm.vue | 5 +- .../dashboard/settings/sla/SlaTimeInput.vue | 1 + .../settings/sla/components/SLAListItem.vue | 4 +- .../routes/dashboard/settings/teams/Index.vue | 4 +- .../portal/components/PublicArticleSearch.vue | 2 +- app/javascript/shared/components/ChatForm.vue | 1 + .../shared/components/ChatOption.vue | 1 + .../shared/components/ChatOptions.vue | 1 + .../shared/components/ResizableTextArea.vue | 6 +- app/javascript/shared/components/TextArea.vue | 1 + .../ui/MultiselectDropdownItems.vue | 1 + .../components/ui/dropdown/AddLabel.vue | 2 + .../components/ui/label/LabelDropdown.vue | 1 + .../components/ui/label/LabelDropdownItem.vue | 1 + .../views/dashboard/Index.vue | 12 +- app/javascript/survey/components/Feedback.vue | 1 + app/javascript/survey/components/Rating.vue | 1 + app/javascript/survey/views/Response.vue | 4 +- .../v3/components/Form/Textarea.vue | 2 +- app/javascript/v3/views/auth/signup/Index.vue | 2 +- .../signup/components/Testimonials/Index.vue | 1 + .../widget/components/ArticleCategoryCard.vue | 1 + .../widget/components/ArticleHero.vue | 3 +- .../widget/components/ArticleList.vue | 1 + .../widget/components/ArticleListItem.vue | 1 + .../widget/components/ArticleSearch.vue | 1 + app/javascript/widget/components/Banner.vue | 1 + .../widget/components/ChatAttachment.vue | 2 +- .../widget/components/ChatInputWrap.vue | 6 +- .../widget/components/ContinueChatButton.vue | 1 + .../widget/components/DragWrapper.vue | 1 + .../widget/components/FooterReplyTo.vue | 1 + .../widget/components/Form/PhoneInput.vue | 8 +- .../widget/components/HeaderActions.vue | 1 + .../widget/components/ImageBubble.vue | 1 + .../widget/components/PreChat/Form.vue | 1 + .../widget/components/SearchArticle.vue | 1 + .../widget/components/TeamAvailability.vue | 1 + .../widget/components/UnreadMessageList.vue | 1 + .../widget/components/template/Article.vue | 8 +- app/javascript/widget/views/Home.vue | 4 +- package.json | 1 + pnpm-lock.yaml | 441 +++++++++++++++++- 257 files changed, 1013 insertions(+), 310 deletions(-) diff --git a/app/javascript/dashboard/components/ChatList.vue b/app/javascript/dashboard/components/ChatList.vue index d7b9ae220..1e3b6d967 100644 --- a/app/javascript/dashboard/components/ChatList.vue +++ b/app/javascript/dashboard/components/ChatList.vue @@ -769,11 +769,11 @@ watch(conversationFilters, (newVal, oldVal) => { :has-applied-filters="hasAppliedFilters" :has-active-folders="hasActiveFolders" :active-status="activeStatus" - @addFolders="onClickOpenAddFoldersModal" - @deleteFolders="onClickOpenDeleteFoldersModal" - @filtersModal="onToggleAdvanceFiltersModal" - @resetFilters="resetAndFetchData" - @basicFilterChange="onBasicFilterChange" + @add-folders="onClickOpenAddFoldersModal" + @delete-folders="onClickOpenDeleteFoldersModal" + @filters-modal="onToggleAdvanceFiltersModal" + @reset-filters="resetAndFetchData" + @basic-filter-change="onBasicFilterChange" /> { v-if="!hasAppliedFiltersOrActiveFolders" :items="assigneeTabItems" :active-tab="activeAssigneeTab" - @chatTabChange="updateAssigneeTab" + @chat-tab-change="updateAssigneeTab" />

{ :show-open-action="allSelectedConversationsStatus('open')" :show-resolved-action="allSelectedConversationsStatus('resolved')" :show-snoozed-action="allSelectedConversationsStatus('snoozed')" - @selectAllConversations="toggleSelectAll" - @assignAgent="onAssignAgent" - @updateConversations="onUpdateConversations" - @assignLabels="onAssignLabels" - @assignTeam="onAssignTeamsForBulk" + @select-all-conversations="toggleSelectAll" + @assign-agent="onAssignAgent" + @update-conversations="onUpdateConversations" + @assign-labels="onAssignLabels" + @assign-team="onAssignTeamsForBulk" />

{ :folders-id="foldersId" :conversation-type="conversationType" :show-assignee="showAssigneeInConversationCard" - @selectConversation="selectConversation" - @deSelectConversation="deSelectConversation" + @select-conversation="selectConversation" + @de-select-conversation="deSelectConversation" /> @@ -889,8 +889,8 @@ watch(conversationFilters, (newVal, oldVal) => { :active-folder-name="activeFolderName" :on-close="closeAdvanceFiltersModal" :is-folder-view="hasActiveFolders" - @applyFilter="onApplyFilter" - @updateFolder="onUpdateSavedFilter" + @apply-filter="onApplyFilter" + @update-folder="onUpdateSavedFilter" />
diff --git a/app/javascript/dashboard/components/ChatListHeader.vue b/app/javascript/dashboard/components/ChatListHeader.vue index 84605da06..86157515e 100644 --- a/app/javascript/dashboard/components/ChatListHeader.vue +++ b/app/javascript/dashboard/components/ChatListHeader.vue @@ -108,7 +108,7 @@ const hasAppliedFiltersOrActiveFolders = computed(() => { /> diff --git a/app/javascript/dashboard/components/ConversationItem.vue b/app/javascript/dashboard/components/ConversationItem.vue index 141a2377a..27ba4c6d6 100644 --- a/app/javascript/dashboard/components/ConversationItem.vue +++ b/app/javascript/dashboard/components/ConversationItem.vue @@ -56,14 +56,14 @@ export default { :selected="isConversationSelected(source.id)" :show-assignee="showAssignee" enable-context-menu - @selectConversation="selectConversation" - @deSelectConversation="deSelectConversation" - @assignAgent="assignAgent" - @assignTeam="assignTeam" - @assignLabel="assignLabels" - @updateConversationStatus="updateConversationStatus" - @contextMenuToggle="toggleContextMenu" - @markAsUnread="markAsUnread" - @assignPriority="assignPriority" + @select-conversation="selectConversation" + @de-select-conversation="deSelectConversation" + @assign-agent="assignAgent" + @assign-team="assignTeam" + @assign-label="assignLabels" + @update-conversation-status="updateConversationStatus" + @context-menu-toggle="toggleContextMenu" + @mark-as-unread="markAsUnread" + @assign-priority="assignPriority" /> diff --git a/app/javascript/dashboard/components/CustomAttribute.vue b/app/javascript/dashboard/components/CustomAttribute.vue index e604a9ede..c58243ba9 100644 --- a/app/javascript/dashboard/components/CustomAttribute.vue +++ b/app/javascript/dashboard/components/CustomAttribute.vue @@ -31,6 +31,7 @@ export default { attributeKey: { type: String, required: true }, contactId: { type: Number, default: null }, }, + emits: ['update', 'delete', 'copy'], setup() { return { v$: useVuelidate() }; }, @@ -138,7 +139,7 @@ export default { this.editedValue = this.formattedValue; emitter.on(BUS_EVENTS.FOCUS_CUSTOM_ATTRIBUTE, this.onFocusAttribute); }, - destroyed() { + unmounted() { emitter.off(BUS_EVENTS.FOCUS_CUSTOM_ATTRIBUTE, this.onFocusAttribute); }, methods: { diff --git a/app/javascript/dashboard/components/CustomBrandPolicyWrapper.vue b/app/javascript/dashboard/components/CustomBrandPolicyWrapper.vue index b07b24657..42a1c4401 100644 --- a/app/javascript/dashboard/components/CustomBrandPolicyWrapper.vue +++ b/app/javascript/dashboard/components/CustomBrandPolicyWrapper.vue @@ -18,6 +18,7 @@ const shouldShowContent = computed( ); +