From 6abf9d18707753d3d8efa0e120861d6e766cd66c Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Wed, 21 Aug 2024 16:32:08 +0530 Subject: [PATCH] fix: implemented view selector in breadcrumb for all pages --- .../components/ListViews/ContactsListView.vue | 6 +- .../components/ListViews/DealsListView.vue | 16 ++++- .../ListViews/OrganizationsListView.vue | 4 ++ frontend/src/pages/CallLogs.vue | 39 ++++++++++-- frontend/src/pages/Contact.vue | 48 +++++++++++---- frontend/src/pages/Contacts.vue | 58 ++++++++++-------- frontend/src/pages/Deal.vue | 27 ++++++++- frontend/src/pages/Deals.vue | 45 ++++++++++++-- frontend/src/pages/EmailTemplates.vue | 41 +++++++++++-- frontend/src/pages/Notes.vue | 50 ++++++++++++---- frontend/src/pages/Organization.vue | 53 +++++++++++++---- frontend/src/pages/Organizations.vue | 59 +++++++++++-------- frontend/src/pages/Tasks.vue | 46 +++++++++++---- frontend/src/router.js | 20 +++---- 14 files changed, 385 insertions(+), 127 deletions(-) diff --git a/frontend/src/components/ListViews/ContactsListView.vue b/frontend/src/components/ListViews/ContactsListView.vue index 26fbc18a..bfa5e695 100644 --- a/frontend/src/components/ListViews/ContactsListView.vue +++ b/frontend/src/components/ListViews/ContactsListView.vue @@ -7,6 +7,7 @@ getRowRoute: (row) => ({ name: 'Contact', params: { contactId: row.name }, + query: { view: route.query.view, viewType: route.params.viewType }, }), selectable: options.selectable, showTooltip: options.showTooltip, @@ -174,6 +175,7 @@ import { } from 'frappe-ui' import { sessionStore } from '@/stores/session' import { ref, computed, watch } from 'vue' +import { useRoute } from 'vue-router' const props = defineProps({ rows: { @@ -205,6 +207,8 @@ const emit = defineEmits([ 'likeDoc', ]) +const route = useRoute() + const pageLengthCount = defineModel() const list = defineModel('list') @@ -230,7 +234,7 @@ const listBulkActionsRef = ref(null) defineExpose({ customListActions: computed( - () => listBulkActionsRef.value?.customListActions + () => listBulkActionsRef.value?.customListActions, ), }) diff --git a/frontend/src/components/ListViews/DealsListView.vue b/frontend/src/components/ListViews/DealsListView.vue index dc0c4fc8..0dbe0934 100644 --- a/frontend/src/components/ListViews/DealsListView.vue +++ b/frontend/src/components/ListViews/DealsListView.vue @@ -4,14 +4,21 @@ :columns="columns" :rows="rows" :options="{ - getRowRoute: (row) => ({ name: 'Deal', params: { dealId: row.name } }), + getRowRoute: (row) => ({ + name: 'Deal', + params: { dealId: row.name }, + query: { view: route.query.view, viewType: route.params.viewType }, + }), selectable: options.selectable, showTooltip: options.showTooltip, resizeColumn: options.resizeColumn, }" row-key="name" > - + listBulkActionsRef.value?.customListActions + () => listBulkActionsRef.value?.customListActions, ), }) diff --git a/frontend/src/components/ListViews/OrganizationsListView.vue b/frontend/src/components/ListViews/OrganizationsListView.vue index 7011fc65..6099ba8d 100644 --- a/frontend/src/components/ListViews/OrganizationsListView.vue +++ b/frontend/src/components/ListViews/OrganizationsListView.vue @@ -6,6 +6,7 @@ getRowRoute: (row) => ({ name: 'Organization', params: { organizationId: row.name }, + query: { view: route.query.view, viewType: route.params.viewType }, }), selectable: options.selectable, showTooltip: options.showTooltip, @@ -156,6 +157,7 @@ import { } from 'frappe-ui' import { sessionStore } from '@/stores/session' import { ref, computed, watch } from 'vue' +import { useRoute } from 'vue-router' const props = defineProps({ rows: { @@ -187,6 +189,8 @@ const emit = defineEmits([ 'likeDoc', ]) +const route = useRoute() + const pageLengthCount = defineModel() const list = defineModel('list') diff --git a/frontend/src/pages/CallLogs.vue b/frontend/src/pages/CallLogs.vue index 73450039..dd6c0942 100644 --- a/frontend/src/pages/CallLogs.vue +++ b/frontend/src/pages/CallLogs.vue @@ -1,7 +1,39 @@