From e3268d472275862368bdd4816ee48bc6dd1684c8 Mon Sep 17 00:00:00 2001 From: Achintha Isuru Date: Wed, 4 Feb 2026 08:47:43 -0500 Subject: [PATCH] refactor: Replace HubsConstants.googlePlacesApiKey with AppConfig.googlePlacesApiKey for better configuration management --- apps/mobile/packages/core/lib/src/config/app_config.dart | 4 ++++ .../lib/src/data/repositories_impl/hub_repository_impl.dart | 3 ++- .../src/presentation/widgets/hub_address_autocomplete.dart | 3 ++- .../features/client/hubs/lib/src/util/hubs_constants.dart | 3 --- 4 files changed, 8 insertions(+), 5 deletions(-) diff --git a/apps/mobile/packages/core/lib/src/config/app_config.dart b/apps/mobile/packages/core/lib/src/config/app_config.dart index 5e652bd0..ac1ccfc7 100644 --- a/apps/mobile/packages/core/lib/src/config/app_config.dart +++ b/apps/mobile/packages/core/lib/src/config/app_config.dart @@ -1,5 +1,9 @@ +/// AppConfig class that holds configuration constants for the application. +/// This class is used to access various API keys and other configuration values +/// throughout the app. class AppConfig { AppConfig._(); + /// The Google Places API key used for address autocomplete functionality. static const String googlePlacesApiKey = String.fromEnvironment('GOOGLE_PLACES_API_KEY'); } diff --git a/apps/mobile/packages/features/client/hubs/lib/src/data/repositories_impl/hub_repository_impl.dart b/apps/mobile/packages/features/client/hubs/lib/src/data/repositories_impl/hub_repository_impl.dart index 45b8b8f8..5fb1f0ba 100644 --- a/apps/mobile/packages/features/client/hubs/lib/src/data/repositories_impl/hub_repository_impl.dart +++ b/apps/mobile/packages/features/client/hubs/lib/src/data/repositories_impl/hub_repository_impl.dart @@ -3,6 +3,7 @@ import 'dart:convert'; import 'package:firebase_auth/firebase_auth.dart' as firebase; import 'package:firebase_data_connect/firebase_data_connect.dart'; import 'package:http/http.dart' as http; +import 'package:krow_core/core.dart'; import 'package:krow_data_connect/krow_data_connect.dart' as dc; import 'package:krow_domain/krow_domain.dart' as domain; import 'package:krow_domain/krow_domain.dart' @@ -262,7 +263,7 @@ class HubRepositoryImpl implements HubRepositoryInterface { { 'place_id': placeId, 'fields': 'address_component', - 'key': HubsConstants.googlePlacesApiKey, + 'key': AppConfig.googlePlacesApiKey, }, ); try { diff --git a/apps/mobile/packages/features/client/hubs/lib/src/presentation/widgets/hub_address_autocomplete.dart b/apps/mobile/packages/features/client/hubs/lib/src/presentation/widgets/hub_address_autocomplete.dart index 784cf094..575f2cc6 100644 --- a/apps/mobile/packages/features/client/hubs/lib/src/presentation/widgets/hub_address_autocomplete.dart +++ b/apps/mobile/packages/features/client/hubs/lib/src/presentation/widgets/hub_address_autocomplete.dart @@ -2,6 +2,7 @@ import 'package:design_system/design_system.dart'; import 'package:flutter/material.dart'; import 'package:google_places_flutter/google_places_flutter.dart'; import 'package:google_places_flutter/model/prediction.dart'; +import 'package:krow_core/core.dart'; import '../../util/hubs_constants.dart'; @@ -24,7 +25,7 @@ class HubAddressAutocomplete extends StatelessWidget { return GooglePlaceAutoCompleteTextField( textEditingController: controller, focusNode: focusNode, - googleAPIKey: HubsConstants.googlePlacesApiKey, + googleAPIKey: AppConfig.googlePlacesApiKey, debounceTime: 500, countries: HubsConstants.supportedCountries, isLatLngRequired: true, diff --git a/apps/mobile/packages/features/client/hubs/lib/src/util/hubs_constants.dart b/apps/mobile/packages/features/client/hubs/lib/src/util/hubs_constants.dart index 13eae839..441cdb3b 100644 --- a/apps/mobile/packages/features/client/hubs/lib/src/util/hubs_constants.dart +++ b/apps/mobile/packages/features/client/hubs/lib/src/util/hubs_constants.dart @@ -1,6 +1,3 @@ -import 'package:krow_core/krow_core.dart'; - class HubsConstants { - static const String googlePlacesApiKey = AppConfig.googlePlacesApiKey; static const List supportedCountries = ['us']; }