Skip to content

Commit

Permalink
Update VendorCommunicator.ts (#19)
Browse files Browse the repository at this point in the history
Co-authored-by: Ian White <iwhite2@wayfair.com>
  • Loading branch information
NothingButThyme and Ian White committed Jan 26, 2023
1 parent 77910ab commit 53724b3
Showing 1 changed file with 16 additions and 0 deletions.
16 changes: 16 additions & 0 deletions src/classes/VendorCommunicator.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,13 @@ export enum VendorEvent {
TokenRefreshRequested = 'TokenRefreshRequested',
UnauthorizedToken = 'UnauthorizedToken',
TrackingEvent = 'TrackingEvent',
NavigationEvent = 'NavigationEvent',
}

export enum NavigationEventType {
ProjectLoaded = 'ProjectLoaded',
NewProjectSaved = 'NewProjectSaved',
ProjectsPageLoaded = 'ProjectsPageLoaded',
}

interface CommonPayload {
Expand Down Expand Up @@ -74,6 +81,11 @@ interface TrackingEventPayload {
actionData: Record<string, unknown>;
}

interface NavigationEventPayload extends CommonPayload {
eventType: NavigationEventType;
projectId?: string;
}

export class VendorCommunicator extends Communicator {
constructor(origin: string) {
super(origin);
Expand Down Expand Up @@ -128,4 +140,8 @@ export class VendorCommunicator extends Communicator {
trackEvent(payload: TrackingEventPayload): void {
this.post({type: VendorEvent.TrackingEvent, payload});
}

navigationEvent(payload: NavigationEventPayload): void {
this.post({type: VendorEvent.NavigationEvent, payload});
}
}

0 comments on commit 53724b3

Please sign in to comment.