diff --git a/.changeset/nasty-hats-hope.md b/.changeset/nasty-hats-hope.md new file mode 100644 index 00000000000..4e9f22d4cf8 --- /dev/null +++ b/.changeset/nasty-hats-hope.md @@ -0,0 +1,6 @@ +--- +'@firebase/analytics-types': minor +'firebase': minor +--- + +Add `firebase_screen` and `firebase_screen_class` to `logEvent()` overload for `screen_view` events. diff --git a/common/api-review/analytics-exp.api.md b/common/api-review/analytics-exp.api.md index 35172fa0f8f..b9debc18710 100644 --- a/common/api-review/analytics-exp.api.md +++ b/common/api-review/analytics-exp.api.md @@ -74,6 +74,8 @@ export interface EventParams { event_label?: string; // (undocumented) fatal?: boolean; + firebase_screen?: string; + firebase_screen_class?: string; // (undocumented) item_list_id?: string; // (undocumented) @@ -295,6 +297,8 @@ export function logEvent(analyticsInstance: Analytics, eventName: 'purchase' | ' export function logEvent(analyticsInstance: Analytics, eventName: 'screen_view', eventParams?: { app_name: string; screen_name: EventParams['screen_name']; + firebase_screen: EventParams['firebase_screen']; + firebase_screen_class: EventParams['firebase_screen_class']; app_id?: string; app_version?: string; app_installer_id?: string; diff --git a/packages-exp/analytics-exp/src/api.ts b/packages-exp/analytics-exp/src/api.ts index c0ff7f337fc..e644cba77ac 100644 --- a/packages-exp/analytics-exp/src/api.ts +++ b/packages-exp/analytics-exp/src/api.ts @@ -450,6 +450,8 @@ export function logEvent( eventParams?: { app_name: string; screen_name: EventParams['screen_name']; + firebase_screen: EventParams['firebase_screen']; + firebase_screen_class: EventParams['firebase_screen_class']; app_id?: string; app_version?: string; app_installer_id?: string; diff --git a/packages-exp/analytics-exp/src/public-types.ts b/packages-exp/analytics-exp/src/public-types.ts index 13076472589..2da29cc567c 100644 --- a/packages-exp/analytics-exp/src/public-types.ts +++ b/packages-exp/analytics-exp/src/public-types.ts @@ -279,6 +279,14 @@ export interface EventParams { number?: string; promotions?: Promotion[]; screen_name?: string; + /** + * Firebase-specific. Use to log a `screen_name` to Firebase Analytics. + */ + firebase_screen?: string; + /** + * Firebase-specific. Use to log a `screen_class` to Firebase Analytics. + */ + firebase_screen_class?: string; search_term?: string; shipping?: Currency; tax?: Currency; diff --git a/packages/analytics-types/index.d.ts b/packages/analytics-types/index.d.ts index b2632793d43..eaa29212691 100644 --- a/packages/analytics-types/index.d.ts +++ b/packages/analytics-types/index.d.ts @@ -249,6 +249,8 @@ export interface FirebaseAnalytics { eventParams?: { app_name: string; screen_name: EventParams['screen_name']; + firebase_screen: EventParams['firebase_screen']; + firebase_screen_class: EventParams['firebase_screen_class']; app_id?: string; app_version?: string; app_installer_id?: string; @@ -546,6 +548,14 @@ export interface EventParams { number?: string; promotions?: Promotion[]; screen_name?: string; + /** + * Firebase-specific. Use to log a `screen_name` to Firebase Analytics. + */ + firebase_screen?: string; + /** + * Firebase-specific. Use to log a `screen_class` to Firebase Analytics. + */ + firebase_screen_class?: string; search_term?: string; shipping?: Currency; tax?: Currency; diff --git a/packages/firebase/index.d.ts b/packages/firebase/index.d.ts index 18c4e7e1b47..0a776c77f12 100644 --- a/packages/firebase/index.d.ts +++ b/packages/firebase/index.d.ts @@ -4858,6 +4858,8 @@ declare namespace firebase.analytics { eventParams?: { app_name: string; screen_name: EventParams['screen_name']; + firebase_screen: EventParams['firebase_screen']; + firebase_screen_class: EventParams['firebase_screen_class']; app_id?: string; app_version?: string; app_installer_id?: string; @@ -5166,6 +5168,14 @@ declare namespace firebase.analytics { number?: string; promotions?: Promotion[]; screen_name?: string; + /** + * Firebase-specific. Use to log a `screen_name` to Firebase Analytics. + */ + firebase_screen?: string; + /** + * Firebase-specific. Use to log a `screen_class` to Firebase Analytics. + */ + firebase_screen_class?: string; search_term?: string; shipping?: Currency; tax?: Currency;