From f1bef0ad75bbeb37e6b7ac09177b646654f80413 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Fri, 16 Aug 2024 19:21:03 +0530 Subject: [PATCH] fix: capture doc creation event --- frontend/src/components/CommunicationArea.vue | 4 ++-- frontend/src/components/EmailEditor.vue | 2 +- frontend/src/components/Modals/ContactModal.vue | 6 +++++- frontend/src/components/Modals/DealModal.vue | 2 ++ frontend/src/components/Modals/EmailTemplateModal.vue | 2 +- frontend/src/components/Modals/LeadModal.vue | 2 ++ frontend/src/components/Modals/NoteModal.vue | 2 +- frontend/src/components/Modals/OrganizationModal.vue | 6 +++++- frontend/src/components/Modals/TaskModal.vue | 2 +- frontend/src/pages/Lead.vue | 2 +- 10 files changed, 21 insertions(+), 9 deletions(-) diff --git a/frontend/src/components/CommunicationArea.vue b/frontend/src/components/CommunicationArea.vue index d2411a99..384b75fc 100644 --- a/frontend/src/components/CommunicationArea.vue +++ b/frontend/src/components/CommunicationArea.vue @@ -220,7 +220,7 @@ async function submitEmail() { newEmail.value = '' reload.value = true emit('scroll') - capture('email_sent', { doctype: props.doctype, name: doc.value.data.name }) + capture('email_sent', { doctype: props.doctype }) } async function submitComment() { @@ -230,7 +230,7 @@ async function submitComment() { newComment.value = '' reload.value = true emit('scroll') - capture('comment_sent', { doctype: props.doctype, name: doc.value.data.name }) + capture('comment_sent', { doctype: props.doctype }) } function toggleEmailBox() { diff --git a/frontend/src/components/EmailEditor.vue b/frontend/src/components/EmailEditor.vue index 8d0154cd..b33f22df 100644 --- a/frontend/src/components/EmailEditor.vue +++ b/frontend/src/components/EmailEditor.vue @@ -274,7 +274,7 @@ async function applyEmailTemplate(template) { editor.value.commands.setContent(data.message) } showEmailTemplateSelectorModal.value = false - capture('email_template_applied', { email_template: template.name }) + capture('email_template_applied', { doctype: props.doctype }) } function appendEmoji() { diff --git a/frontend/src/components/Modals/ContactModal.vue b/frontend/src/components/Modals/ContactModal.vue index 36ce459a..ca412f67 100644 --- a/frontend/src/components/Modals/ContactModal.vue +++ b/frontend/src/components/Modals/ContactModal.vue @@ -92,6 +92,7 @@ import CertificateIcon from '@/components/Icons/CertificateIcon.vue' import EditIcon from '@/components/Icons/EditIcon.vue' import Dropdown from '@/components/frappe-ui/Dropdown.vue' import { usersStore } from '@/stores/users' +import { capture } from '@/telemetry' import { call, createResource } from 'frappe-ui' import { ref, nextTick, watch, computed } from 'vue' import { createToast } from '@/utils' @@ -160,7 +161,10 @@ async function callInsertDoc() { ..._contact.value, }, }) - doc.name && handleContactUpdate(doc) + if (doc.name) { + capture('contact_created') + handleContactUpdate(doc) + } } function handleContactUpdate(doc) { diff --git a/frontend/src/components/Modals/DealModal.vue b/frontend/src/components/Modals/DealModal.vue index 9988a3e8..61b89b3d 100644 --- a/frontend/src/components/Modals/DealModal.vue +++ b/frontend/src/components/Modals/DealModal.vue @@ -61,6 +61,7 @@ import EditIcon from '@/components/Icons/EditIcon.vue' import Fields from '@/components/Fields.vue' import { usersStore } from '@/stores/users' import { statusesStore } from '@/stores/statuses' +import { capture } from '@/telemetry' import { Switch, createResource } from 'frappe-ui' import { computed, ref, reactive, onMounted, nextTick } from 'vue' import { useRouter } from 'vue-router' @@ -201,6 +202,7 @@ function createDeal() { isDealCreating.value = true }, onSuccess(name) { + capture('deal_created') isDealCreating.value = false show.value = false router.push({ name: 'Deal', params: { dealId: name } }) diff --git a/frontend/src/components/Modals/EmailTemplateModal.vue b/frontend/src/components/Modals/EmailTemplateModal.vue index 0b2924e4..05338388 100644 --- a/frontend/src/components/Modals/EmailTemplateModal.vue +++ b/frontend/src/components/Modals/EmailTemplateModal.vue @@ -173,7 +173,7 @@ async function callInsertDoc() { }, }) if (doc.name) { - capture('email_template_created', { email_template: doc.name }) + capture('email_template_created', { doctype: doc.reference_doctype }) handleEmailTemplateUpdate(doc) } } diff --git a/frontend/src/components/Modals/LeadModal.vue b/frontend/src/components/Modals/LeadModal.vue index b6c0e792..b325c49f 100644 --- a/frontend/src/components/Modals/LeadModal.vue +++ b/frontend/src/components/Modals/LeadModal.vue @@ -46,6 +46,7 @@ import EditIcon from '@/components/Icons/EditIcon.vue' import Fields from '@/components/Fields.vue' import { usersStore } from '@/stores/users' import { statusesStore } from '@/stores/statuses' +import { capture } from '@/telemetry' import { createResource } from 'frappe-ui' import { computed, onMounted, ref, reactive, nextTick } from 'vue' import { useRouter } from 'vue-router' @@ -153,6 +154,7 @@ function createNewLead() { isLeadCreating.value = true }, onSuccess(data) { + capture('lead_created') isLeadCreating.value = false show.value = false router.push({ name: 'Lead', params: { leadId: data.name } }) diff --git a/frontend/src/components/Modals/NoteModal.vue b/frontend/src/components/Modals/NoteModal.vue index 1e0099bf..b26a1162 100644 --- a/frontend/src/components/Modals/NoteModal.vue +++ b/frontend/src/components/Modals/NoteModal.vue @@ -125,7 +125,7 @@ async function updateNote() { }, }) if (d.name) { - capture('note_created', { note: d.name }) + capture('note_created') notes.value?.reload() emit('after', d, true) } diff --git a/frontend/src/components/Modals/OrganizationModal.vue b/frontend/src/components/Modals/OrganizationModal.vue index 27703d8e..74f3e8bb 100644 --- a/frontend/src/components/Modals/OrganizationModal.vue +++ b/frontend/src/components/Modals/OrganizationModal.vue @@ -67,6 +67,7 @@ import OrganizationsIcon from '@/components/Icons/OrganizationsIcon.vue' import TerritoryIcon from '@/components/Icons/TerritoryIcon.vue' import { usersStore } from '@/stores/users' import { formatNumberIntoCurrency } from '@/utils' +import { capture } from '@/telemetry' import { call, FeatherIcon, createResource } from 'frappe-ui' import { ref, nextTick, watch, computed, h } from 'vue' import { useRouter } from 'vue-router' @@ -157,7 +158,10 @@ async function callInsertDoc() { }, }) loading.value = false - doc.name && handleOrganizationUpdate(doc) + if (doc.name) { + capture('organization_created') + handleOrganizationUpdate(doc) + } } function handleOrganizationUpdate(doc, renamed = false) { diff --git a/frontend/src/components/Modals/TaskModal.vue b/frontend/src/components/Modals/TaskModal.vue index 0401da34..808d54b7 100644 --- a/frontend/src/components/Modals/TaskModal.vue +++ b/frontend/src/components/Modals/TaskModal.vue @@ -200,7 +200,7 @@ async function updateTask() { }, }) if (d.name) { - capture('task_created', { task: d.name }) + capture('task_created') tasks.value.reload() } } diff --git a/frontend/src/pages/Lead.vue b/frontend/src/pages/Lead.vue index ddb75b7d..042ba3ac 100644 --- a/frontend/src/pages/Lead.vue +++ b/frontend/src/pages/Lead.vue @@ -588,7 +588,7 @@ async function convertToDeal(updated) { }, ) if (deal) { - capture('convert_lead_to_deal', { lead: lead.data.name, deal }) + capture('convert_lead_to_deal') if (updated) { await organizations.reload() await contacts.reload()