diff --git a/app/javascript/dashboard/components/ChatList.vue b/app/javascript/dashboard/components/ChatList.vue
index 6f6b1961c..d1ac4945f 100644
--- a/app/javascript/dashboard/components/ChatList.vue
+++ b/app/javascript/dashboard/components/ChatList.vue
@@ -95,6 +95,7 @@
@select-all-conversations="selectAllConversations"
@assign-agent="onAssignAgent"
@update-conversations="onUpdateConversations"
+ @assign-labels="onAssignLabels"
/>
+
+
+
+
import AgentSelector from './AgentSelector.vue';
import UpdateActions from './UpdateActions.vue';
+import LabelActions from './LabelActions.vue';
export default {
components: {
AgentSelector,
UpdateActions,
+ LabelActions,
},
props: {
conversations: {
@@ -103,6 +121,7 @@ export default {
return {
showAgentsList: false,
showUpdateActions: false,
+ showLabelActions: false,
};
},
methods: {
@@ -115,12 +134,18 @@ export default {
updateConversations(status) {
this.$emit('update-conversations', status);
},
+ assignLabels(labels) {
+ this.$emit('assign-labels', labels);
+ },
resolveConversations() {
this.$emit('resolve-conversations');
},
toggleUpdateActions() {
this.showUpdateActions = !this.showUpdateActions;
},
+ toggleLabelActions() {
+ this.showLabelActions = !this.showLabelActions;
+ },
toggleAgentList() {
this.showAgentsList = !this.showAgentsList;
},
diff --git a/app/javascript/dashboard/components/widgets/conversation/conversationBulkActions/LabelActions.vue b/app/javascript/dashboard/components/widgets/conversation/conversationBulkActions/LabelActions.vue
new file mode 100644
index 000000000..eb93586e3
--- /dev/null
+++ b/app/javascript/dashboard/components/widgets/conversation/conversationBulkActions/LabelActions.vue
@@ -0,0 +1,282 @@
+
+
+
+
+
+
+
diff --git a/app/javascript/dashboard/i18n/locale/en/bulkActions.json b/app/javascript/dashboard/i18n/locale/en/bulkActions.json
index f9e084cd7..7061e5e70 100644
--- a/app/javascript/dashboard/i18n/locale/en/bulkActions.json
+++ b/app/javascript/dashboard/i18n/locale/en/bulkActions.json
@@ -17,6 +17,13 @@
"SNOOZE_UNTIL_NEXT_REPLY": "Snooze until next reply",
"UPDATE_SUCCESFUL": "Conversation status updated successfully.",
"UPDATE_FAILED": "Failed to update conversations, please try again"
+ },
+ "LABELS": {
+ "ASSIGN_LABELS": "Assign Labels",
+ "NO_LABELS_FOUND": "No labels found for",
+ "ASSIGN_SELECTED_LABELS": "Assign selected labels",
+ "ASSIGN_SUCCESFUL": "Labels assigned successfully",
+ "ASSIGN_FAILED": "Failed to assign labels, please try again"
}
}
}