From 1d670acfaaceccd4c868eaeeeacce768c1eb3173 Mon Sep 17 00:00:00 2001 From: Christer Date: Mon, 27 Oct 2025 16:08:32 +0100 Subject: [PATCH 1/2] docs(cli_tools): Doc comment correction --- .../lib/src/local_storage_manager/local_storage_manager.dart | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/packages/cli_tools/lib/src/local_storage_manager/local_storage_manager.dart b/packages/cli_tools/lib/src/local_storage_manager/local_storage_manager.dart index 4b56512..7a87b0f 100644 --- a/packages/cli_tools/lib/src/local_storage_manager/local_storage_manager.dart +++ b/packages/cli_tools/lib/src/local_storage_manager/local_storage_manager.dart @@ -84,8 +84,7 @@ abstract base class LocalStorageManager { } /// Tries to fetch and deserialize a json file from the local storage. - /// If the file does not exist or if an error occurs during reading or - /// deserialization, null will be returned. + /// If the file does not exist null will be returned. /// /// [fileName] The name of the file to fetch. /// [localStoragePath] The path to the local storage directory. From 180bdaef606e4a36c9499a388b360e6506705220 Mon Sep 17 00:00:00 2001 From: Christer Date: Mon, 27 Oct 2025 16:16:35 +0100 Subject: [PATCH 2/2] feat(cli_tools): Enable override of analytics API URL Enable override of the analytics reporting API URL, and of the API call timeout. --- .../cli_tools/lib/src/analytics/analytics.dart | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/packages/cli_tools/lib/src/analytics/analytics.dart b/packages/cli_tools/lib/src/analytics/analytics.dart index 4802252..af0f9ce 100644 --- a/packages/cli_tools/lib/src/analytics/analytics.dart +++ b/packages/cli_tools/lib/src/analytics/analytics.dart @@ -15,18 +15,26 @@ abstract interface class Analytics { /// Analytics service for MixPanel. class MixPanelAnalytics implements Analytics { + static const _defaultEndpoint = 'https://api.mixpanel.com/track'; + static const _defaultTimeout = Duration(seconds: 2); + final String _uniqueUserId; - final String _endpoint = 'https://api.mixpanel.com/track'; + final String _endpoint; final String _projectToken; final String _version; + final Duration _timeout; MixPanelAnalytics({ required final String uniqueUserId, required final String projectToken, required final String version, + final String endpoint = _defaultEndpoint, + final Duration timeout = _defaultTimeout, }) : _uniqueUserId = uniqueUserId, _projectToken = projectToken, - _version = version; + _version = version, + _endpoint = endpoint, + _timeout = timeout; @override void cleanUp() {} @@ -69,7 +77,7 @@ class MixPanelAnalytics implements Analytics { 'Accept': 'text/plain', 'Content-Type': 'application/x-www-form-urlencoded', }, - ).timeout(const Duration(seconds: 2)); + ).timeout(_timeout); } catch (e) { return; }