From fc1d7ec8417b2eb177648c6c86a78913c1ade7e1 Mon Sep 17 00:00:00 2001 From: Hani Vora <150109181+hani-iterable@users.noreply.github.com> Date: Tue, 20 Aug 2024 02:25:27 +0530 Subject: [PATCH] Nested custom event check related change (#432) --- src/anonymousUserTracking/complexCriteria.test.ts | 4 +--- src/anonymousUserTracking/criteriaCompletionChecker.ts | 5 ++++- src/anonymousUserTracking/tests/complexCriteria.test.ts | 2 +- 3 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/anonymousUserTracking/complexCriteria.test.ts b/src/anonymousUserTracking/complexCriteria.test.ts index df29440c..7aba642f 100644 --- a/src/anonymousUserTracking/complexCriteria.test.ts +++ b/src/anonymousUserTracking/complexCriteria.test.ts @@ -694,9 +694,7 @@ describe('complexCriteria', () => { { eventName: 'button-clicked', dataFields: { - 'button-clicked': { - lastPageViewed: 'welcome page' - } + lastPageViewed: 'welcome page' }, eventType: 'customEvent' }, diff --git a/src/anonymousUserTracking/criteriaCompletionChecker.ts b/src/anonymousUserTracking/criteriaCompletionChecker.ts index 089dad52..fbd3103d 100644 --- a/src/anonymousUserTracking/criteriaCompletionChecker.ts +++ b/src/anonymousUserTracking/criteriaCompletionChecker.ts @@ -372,7 +372,10 @@ class CriteriaCompletionChecker { } private getFieldValue(data: any, field: string): any { - const fields = field.split('.'); + let fields = field.split('.'); + if (data?.eventType === TRACK_EVENT && data?.eventName === fields[0]) { + fields = [fields[fields.length - 1]]; + } return fields.reduce( (value, currentField) => value && value[currentField] !== undefined diff --git a/src/anonymousUserTracking/tests/complexCriteria.test.ts b/src/anonymousUserTracking/tests/complexCriteria.test.ts index c58280bc..03b4de27 100644 --- a/src/anonymousUserTracking/tests/complexCriteria.test.ts +++ b/src/anonymousUserTracking/tests/complexCriteria.test.ts @@ -694,7 +694,7 @@ describe('complexCriteria', () => { { eventName: 'button-clicked', dataFields: { - 'button-clicked': { lastPageViewed: 'welcome page' } + lastPageViewed: 'welcome page' }, eventType: 'customEvent' },