From 80d7a8246afd72f21bae5e1757199f2afe94467f Mon Sep 17 00:00:00 2001 From: Vishesh Handa Date: Tue, 3 Aug 2021 14:01:34 +0200 Subject: [PATCH] Analytics: Simplify code --- lib/analytics/analytics.dart | 79 ++++-------------------------------- pubspec.lock | 7 ++++ pubspec.yaml | 1 + 3 files changed, 15 insertions(+), 72 deletions(-) diff --git a/lib/analytics/analytics.dart b/lib/analytics/analytics.dart index 63016c40..d270e8b1 100644 --- a/lib/analytics/analytics.dart +++ b/lib/analytics/analytics.dart @@ -1,3 +1,5 @@ +import 'package:recase/recase.dart'; + import 'package:gitjournal/error_reporting.dart'; import 'package:gitjournal/logger/logger.dart'; @@ -53,78 +55,6 @@ enum Event { */ } -String _eventToString(Event e) { - switch (e) { - case Event.NoteAdded: - return "note_added"; - case Event.NoteUpdated: - return "note_updated"; - case Event.NoteDeleted: - return "note_deleted"; - case Event.NoteUndoDeleted: - return "note_undo_deleted"; - case Event.NoteRenamed: - return "note_renamed"; - case Event.NoteMoved: - return "note_moved"; - - case Event.FileRenamed: - return "file_renamed"; - - case Event.FolderAdded: - return "folder_added"; - case Event.FolderDeleted: - return "folder_deleted"; - case Event.FolderRenamed: - return "folder_renamed"; - case Event.FolderConfigUpdated: - return "folder_config_updated"; - - case Event.RepoSynced: - return "repo_synced"; - - case Event.DrawerSetupGitHost: - return "drawer_setupGitHost"; - case Event.DrawerShare: - return "drawer_share"; - case Event.DrawerRate: - return "drawer_rate"; - case Event.DrawerFeedback: - return "drawer_feedback"; - case Event.DrawerBugReport: - return "drawer_bugreport"; - case Event.DrawerSettings: - return "drawer_settings"; - - case Event.PurchaseScreenOpen: - return "purchase_screen_open"; - case Event.PurchaseScreenClose: - return "purchase_screen_close"; - case Event.PurchaseScreenThankYou: - return "purchase_screen_thank_you"; - - case Event.GitHostSetupError: - return "githostsetup_error"; - case Event.GitHostSetupComplete: - return "onboarding_complete"; - case Event.GitHostSetupGitCloneError: - return "onboarding_gitClone_error"; - case Event.GitHostSetupButtonClick: - return "githostsetup_button_click"; - - case Event.Settings: - return "settings"; - - case Event.FeatureTimelineGithubClicked: - return "feature_timeline_github_clicked"; - - case Event.AppFirstOpen: - return "gj_first_open"; - case Event.AppUpdate: - return "gj_app_update"; - } -} - class Analytics { bool enabled = false; @@ -171,3 +101,8 @@ void logEvent(Event event, {Map parameters = const {}}) { Analytics.instance?.log(e: event, parameters: parameters); Log.d("$event", props: parameters); } + +String _eventToString(Event e) { + var str = e.toString().substring('Event.'.length); + return ReCase(str).snakeCase; +} diff --git a/pubspec.lock b/pubspec.lock index c19ca784..b5aea5b2 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1071,6 +1071,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.0.1" + recase: + dependency: "direct main" + description: + name: recase + url: "https://pub.dartlang.org" + source: hosted + version: "4.0.0" receive_sharing_intent: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index 0d8a76d0..fea2cd26 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -82,6 +82,7 @@ dependencies: protobuf: ^2.0.0 universal_io: ^2.0.4 sprintf: ^6.0.0 + recase: ^4.0.0 dev_dependencies: #flutter_driver: