From f5b6b7fa40c59efaf78d4e0ee5e9ea4252e18ebc Mon Sep 17 00:00:00 2001 From: Thomas Nguyen Date: Mon, 6 May 2024 12:40:49 -0700 Subject: [PATCH] refactor(core): Export some more symbols and check for truthiness on event types before adding them. (#55587) In some cases, we will be passing in undefined for capture events, so handle this. PR Close #55587 --- .../public-api/core/primitives/event-dispatch/index.md | 6 ++++++ packages/core/primitives/event-dispatch/index.ts | 1 + .../core/primitives/event-dispatch/src/register_events.ts | 8 ++++---- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/goldens/public-api/core/primitives/event-dispatch/index.md b/goldens/public-api/core/primitives/event-dispatch/index.md index bd08a83a1bf..8b4f762dfc8 100644 --- a/goldens/public-api/core/primitives/event-dispatch/index.md +++ b/goldens/public-api/core/primitives/event-dispatch/index.md @@ -28,6 +28,12 @@ export class Dispatcher { unregisterHandler(namespace: string, name: string): void; } +// @public (undocumented) +export interface EarlyJsactionDataContainer { + // (undocumented) + _ejsa?: EarlyJsactionData; +} + // @public export class EventContract implements UnrenamedEventContract { constructor(containerManager: EventContractContainerManager); diff --git a/packages/core/primitives/event-dispatch/index.ts b/packages/core/primitives/event-dispatch/index.ts index 414cc1f9f7e..5736aa9aa59 100644 --- a/packages/core/primitives/event-dispatch/index.ts +++ b/packages/core/primitives/event-dispatch/index.ts @@ -8,6 +8,7 @@ export {Dispatcher, registerDispatcher} from './src/dispatcher'; export {EventContractContainer} from './src/event_contract_container'; +export type {EarlyJsactionDataContainer} from './src/earlyeventcontract'; export {EventContract} from './src/eventcontract'; export {bootstrapEventContract, bootstrapEarlyEventContract} from './src/register_events'; diff --git a/packages/core/primitives/event-dispatch/src/register_events.ts b/packages/core/primitives/event-dispatch/src/register_events.ts index 2c15fe627a8..0f206f23454 100644 --- a/packages/core/primitives/event-dispatch/src/register_events.ts +++ b/packages/core/primitives/event-dispatch/src/register_events.ts @@ -54,8 +54,8 @@ export function bootstrapEarlyEventContract( field: string, container: HTMLElement, appId: string, - eventTypes: string[], - captureEventTypes: string[], + eventTypes?: string[], + captureEventTypes?: string[], earlyJsactionTracker: EventContractTracker = window as unknown as EventContractTracker, ) { if (!earlyJsactionTracker[field]) { @@ -63,6 +63,6 @@ export function bootstrapEarlyEventContract( } earlyJsactionTracker[field][appId] = {}; const eventContract = new EarlyEventContract(earlyJsactionTracker[field][appId], container); - eventContract.addEvents(eventTypes); - eventContract.addEvents(captureEventTypes, true); + eventTypes && eventContract.addEvents(eventTypes); + captureEventTypes && eventContract.addEvents(captureEventTypes, true); }