triggerEvent function

void triggerEvent(
  1. String eventName,
  2. BuildContext context, {
  3. String? route,
})

Implementation

void triggerEvent(String eventName, BuildContext context, {String? route}) {
  final UserState userState =
      StoreProvider.state<CoreState>(context)!.userState!;

  final EventObject eventObjectPayload = EventObject(
    firstName: userState.userProfile!.userBioData!.firstName?.getValue() ?? '',
    lastName: userState.userProfile!.userBioData!.lastName?.getValue() ?? '',
    uid: userState.auth!.uid ?? '',
    route: route ?? '',
    appVersion: APPVERSION,
    primaryPhoneNumber:
        userState.userProfile!.primaryPhoneNumber?.getValue() ?? '',
    flavour: Flavour.PRO.name,
    timestamp: DateTime.now(),
  );

  final String appContext =
      getAppContext(AppWrapperBase.of(context)!.appContexts);

  /// The environment specific event name
  final String contextEventName = '${eventName}_$appContext';

  final FirebaseAnalytics firebaseAnalytics = FirebaseAnalytics.instance;

  firebaseAnalytics.logEvent(
      name: contextEventName, parameters: eventObjectPayload.toJson());
}