Commit 34379184324 for woocommerce
commit 343791843246e7e2bef3f6f303f255d3580f59e9
Author: Seun Olorunsola <30554163+triple0t@users.noreply.github.com>
Date: Fri Oct 30 10:06:27 2026 +0100
Email Editor: remove circular imports in tracking code (#70301)
* Import email editor tracking helpers from event-pipeline
dom-tracking.ts and store-tracking.ts imported recordEvent and
isEventTrackingEnabled from the events index, which re-exports both
files. The blocks build circular dependency check flags these cycles.
Import from event-pipeline, where the functions are defined.
* Add changelog entry for email editor circular imports fix
diff --git a/packages/js/email-editor/changelog/fix-wooplug-8087-email-editor-circular-deps b/packages/js/email-editor/changelog/fix-wooplug-8087-email-editor-circular-deps
new file mode 100644
index 00000000000..9dae9eb1adb
--- /dev/null
+++ b/packages/js/email-editor/changelog/fix-wooplug-8087-email-editor-circular-deps
@@ -0,0 +1,3 @@
+Significance: patch
+Type: dev
+Comment: Remove circular imports in the email editor's tracking code; no production change.
diff --git a/packages/js/email-editor/src/events/dom-tracking.ts b/packages/js/email-editor/src/events/dom-tracking.ts
index 04a1f97e878..90b17bc0c59 100644
--- a/packages/js/email-editor/src/events/dom-tracking.ts
+++ b/packages/js/email-editor/src/events/dom-tracking.ts
@@ -7,7 +7,7 @@ import { __ } from '@wordpress/i18n';
/**
* Internal dependencies
*/
-import { recordEvent, isEventTrackingEnabled } from '.';
+import { recordEvent, isEventTrackingEnabled } from './event-pipeline';
let EVENTS_TO_TRACK = [];
diff --git a/packages/js/email-editor/src/events/store-tracking.ts b/packages/js/email-editor/src/events/store-tracking.ts
index 911138462f2..58f2e0642d4 100644
--- a/packages/js/email-editor/src/events/store-tracking.ts
+++ b/packages/js/email-editor/src/events/store-tracking.ts
@@ -8,7 +8,7 @@ import { __ } from '@wordpress/i18n';
/**
* Internal dependencies
*/
-import { recordEvent, isEventTrackingEnabled } from '.';
+import { recordEvent, isEventTrackingEnabled } from './event-pipeline';
/**
* Handler functions for tracking individual events recorder by the listening to store actions.
diff --git a/packages/js/email-editor/src/events/test/dom-tracking.spec.ts b/packages/js/email-editor/src/events/test/dom-tracking.spec.ts
index 0eb2271dfda..c094f8bbd45 100644
--- a/packages/js/email-editor/src/events/test/dom-tracking.spec.ts
+++ b/packages/js/email-editor/src/events/test/dom-tracking.spec.ts
@@ -7,9 +7,9 @@ import { select } from '@wordpress/data';
* Internal dependencies
*/
import { initDomTracking } from '../dom-tracking';
-import { recordEvent } from '..';
+import { recordEvent } from '../event-pipeline';
-jest.mock( '..', () => ( {
+jest.mock( '../event-pipeline', () => ( {
recordEvent: jest.fn(),
isEventTrackingEnabled: () => true,
} ) );