diff --git a/src/screens/MapView/ProfileHeader/index.tsx b/src/screens/MapView/ProfileHeader/index.tsx
index f52595f2..6d63b94c 100644
--- a/src/screens/MapView/ProfileHeader/index.tsx
+++ b/src/screens/MapView/ProfileHeader/index.tsx
@@ -25,7 +25,11 @@ interface ProfileHeaderProps {
addressItemRef?: React.RefObject;
}
-const ProfileHeader: React.FC = ({ caseId, showDirections = false, addressItemRef }) => {
+const ProfileHeader: React.FC = ({
+ caseId,
+ showDirections = false,
+ addressItemRef,
+}) => {
const caseDetails = useAppSelector((state) => state.allCases?.caseDetails?.[caseId]);
const { customerName, totalOverdueAmount, paymentStatus, collectionTag, dpdBucket } =
caseDetails || {};
@@ -60,7 +64,10 @@ const ProfileHeader: React.FC = ({ caseId, showDirections =
const handleOpenMapForAddresses = () => {
setIsModalVisible(!isModalVisible);
- addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_ADDRESS_CARD_DIRECTIONS_CLICKED, {});
+ addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_ADDRESS_CARD_DIRECTIONS_CLICKED, {
+ attempted_at_address: caseDetails?.addressReferenceId,
+ caseId,
+ });
};
return (
@@ -124,6 +131,8 @@ const ProfileHeader: React.FC = ({ caseId, showDirections =
latitude={caseDetails?.addressLocation?.latitude}
longitude={caseDetails?.addressLocation?.longitude}
addressString={caseDetails?.addressString}
+ caseId={caseId}
+ referenceId={caseDetails?.addressReferenceId}
/>
diff --git a/src/screens/MapView/TopAddress/AddressListItem.tsx b/src/screens/MapView/TopAddress/AddressListItem.tsx
index 43e83dc6..c3c12864 100644
--- a/src/screens/MapView/TopAddress/AddressListItem.tsx
+++ b/src/screens/MapView/TopAddress/AddressListItem.tsx
@@ -71,6 +71,7 @@ const AddressListItem: React.FC = memo(
>
{
isSimilarAddressPage = false,
modalTopOffset,
modalRightOffset,
+ caseId = '',
} = props;
const { pinCode, city, latitude, longitude, rank, visited, locationSubType } =
@@ -58,9 +59,14 @@ const AddressItemHeader = (props: ITopAddressItemHeader) => {
return Linking.openURL(mapUrl);
}
};
+
const handleOpenMapForAddresses = () => {
setIsModalVisible(!isModalVisible);
- addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_ADDRESS_CARD_DIRECTIONS_CLICKED, {});
+ addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_ADDRESS_CARD_DIRECTIONS_CLICKED, {
+ attempted_at_address: locationDetails?.referenceId,
+ address_rank: rank,
+ caseId
+ });
};
return (
@@ -117,6 +123,9 @@ const AddressItemHeader = (props: ITopAddressItemHeader) => {
longitude={locationDetails?.longitude}
addressString={locationDetails?.addressText}
isGeoCoordinatesReliable={locationDetails?.isGeoCoordinatesReliable}
+ caseId={caseId}
+ rank={rank}
+ referenceId={locationDetails?.referenceId}
/>
diff --git a/src/screens/addresses/common/OpenMapOptionsPopUp.tsx b/src/screens/addresses/common/OpenMapOptionsPopUp.tsx
index 37639683..fc2ae4ab 100644
--- a/src/screens/addresses/common/OpenMapOptionsPopUp.tsx
+++ b/src/screens/addresses/common/OpenMapOptionsPopUp.tsx
@@ -11,19 +11,27 @@ import { addClickstreamEvent } from '@services/clickstreamEventService';
import { CLICKSTREAM_EVENT_NAMES } from '@common/Constants';
import Tag, { TagVariant } from '@rn-ui-lib/components/Tag';
-const OpenMapOptionsPopUp = (props: IOpenMapOptionsPopUpProps) => {
- const { latitude, longitude, addressString, isGeoCoordinatesReliable } = props;
+const OpenMapOptionsPopUp = (props: IOpenMapOptionsPopUpProps) => {
+ const { latitude, longitude, addressString, isGeoCoordinatesReliable, caseId, rank = '', referenceId } = props;
const handleSearchByGeolocation = () => {
const mapUrl = getGoogleMapUrl(latitude, longitude);
- addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_LAT_LONG_OPTION_CLICKED, {});
+ addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_LAT_LONG_OPTION_CLICKED, {
+ attempted_at_address: referenceId,
+ address_rank: rank,
+ caseId
+ });
if (!mapUrl) return;
return Linking.openURL(mapUrl);
};
const handleSearchByAddressString = () => {
const mapUrl = getGoogleMapUrlForAddressText(addressString);
- addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_SEARCH_ADDRESS_OPTION_CLICKED, {});
+ addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_SEARCH_ADDRESS_OPTION_CLICKED, {
+ attempted_at_address: referenceId,
+ address_rank: rank,
+ caseId
+ });
if (!mapUrl) return;
return Linking.openURL(mapUrl);
};
diff --git a/src/screens/addresses/common/interfaces.ts b/src/screens/addresses/common/interfaces.ts
index 0ec85246..9b70006d 100644
--- a/src/screens/addresses/common/interfaces.ts
+++ b/src/screens/addresses/common/interfaces.ts
@@ -3,4 +3,7 @@ export interface IOpenMapOptionsPopUpProps {
longitude: number;
addressString: string;
isGeoCoordinatesReliable?: boolean;
+ caseId: string;
+ rank?: number;
+ referenceId?: string;
}
diff --git a/src/screens/addresses/interfaces.ts b/src/screens/addresses/interfaces.ts
index 899c10a0..a866c50a 100644
--- a/src/screens/addresses/interfaces.ts
+++ b/src/screens/addresses/interfaces.ts
@@ -56,6 +56,7 @@ export interface ITopAddressItemHeader {
isSimilarAddressPage?: boolean;
modalTopOffset?: number;
modalRightOffset?: number;
+ caseId?: string;
}
export interface ITopAddressItemFeedback {
diff --git a/src/screens/addresses/otherAddresses/OtherAddressItem.tsx b/src/screens/addresses/otherAddresses/OtherAddressItem.tsx
index 211ef1c0..97672cd2 100644
--- a/src/screens/addresses/otherAddresses/OtherAddressItem.tsx
+++ b/src/screens/addresses/otherAddresses/OtherAddressItem.tsx
@@ -19,6 +19,7 @@ const OtherAddressItem = (props: IOtherAddressItem) => {
{
diff --git a/src/screens/caseDetails/AllocatedAddressDetails.tsx b/src/screens/caseDetails/AllocatedAddressDetails.tsx
index 540bcbe6..985ee5c0 100644
--- a/src/screens/caseDetails/AllocatedAddressDetails.tsx
+++ b/src/screens/caseDetails/AllocatedAddressDetails.tsx
@@ -14,6 +14,8 @@ import { addClickstreamEvent } from '@services/clickstreamEventService';
import React, { useState } from 'react';
import { Linking, StyleSheet, View } from 'react-native';
import OpenMapButtonForAddresses from './OpenMapButtonForAddresses';
+import { RootState } from '@store';
+import { useAppSelector } from '@hooks';
interface IAllocatedAddressDetails {
isCasePaused: boolean;
@@ -36,7 +38,8 @@ const AllocatedAddressDetails = (props: IAllocatedAddressDetails) => {
roadDistance,
} = props;
const [isModalVisible, setIsModalVisible] = useState(false);
-
+ const caseDetails = useAppSelector((state: RootState) => state?.allCases?.caseDetails?.[caseId]) || {};
+
const isGeolocation = addressStringType === AddressTabType.GEO_LOCATION;
const openLocation = () => {
@@ -57,6 +60,10 @@ const AllocatedAddressDetails = (props: IAllocatedAddressDetails) => {
const handleOpenMapForAddresses = () => {
setIsModalVisible(!isModalVisible);
+ addClickstreamEvent(CLICKSTREAM_EVENT_NAMES.FA_ADDRESS_CARD_DIRECTIONS_CLICKED, {
+ attempted_at_address: caseDetails?.addressReferenceId,
+ caseId,
+ });
};
return (
@@ -101,6 +108,8 @@ const AllocatedAddressDetails = (props: IAllocatedAddressDetails) => {
latitude={addressLocation?.latitude}
longitude={addressLocation?.longitude}
addressString={addressString as string}
+ caseId={caseId}
+ referenceId={caseDetails?.addressReferenceId}
/>