diff --git a/packages/deriv_feature_flag/lib/feature_flag/deriv_feature_flag.dart b/packages/deriv_feature_flag/lib/feature_flag/deriv_feature_flag.dart index b1106a230..6dd273ac6 100644 --- a/packages/deriv_feature_flag/lib/feature_flag/deriv_feature_flag.dart +++ b/packages/deriv_feature_flag/lib/feature_flag/deriv_feature_flag.dart @@ -2,6 +2,7 @@ import 'package:deriv_feature_flag/feature_flag/feature_flag_config.dart'; import 'package:deriv_feature_flag/feature_flag/feature_flag_repository.dart'; import 'package:deriv_feature_flag/growthbook/deriv_growth_book.dart'; import 'package:flutter/material.dart'; +import 'package:growthbook_sdk_flutter/growthbook_sdk_flutter.dart'; class DerivFeatureFlag { /// Initializes the FeatureFlag service for the whole app. @@ -17,6 +18,12 @@ class DerivFeatureFlag { .setup(derivGrowthBook: derivGrowthBook); } + Map features() { + return FeatureFlagRepository.getInstance().features.map((key, value) { + return MapEntry(key, value.defaultValue); + }); + } + /// Only for testing purposes. @visibleForTesting static Future initializeTest(DerivGrowthBook derivGrowthBook) async { diff --git a/packages/deriv_feature_flag/lib/feature_flag/feature_flag_repository.dart b/packages/deriv_feature_flag/lib/feature_flag/feature_flag_repository.dart index 35620e3b1..4368b4892 100644 --- a/packages/deriv_feature_flag/lib/feature_flag/feature_flag_repository.dart +++ b/packages/deriv_feature_flag/lib/feature_flag/feature_flag_repository.dart @@ -17,9 +17,14 @@ class FeatureFlagRepository { // Growth Book SDK instance. late final GrowthBookSDK _growthBookSDK; + Map _features = {}; + + Map get features => _features; + /// initialize the GrowthBook sdk instance. Future setup({required DerivGrowthBook derivGrowthBook}) async { _growthBookSDK = await derivGrowthBook.initializeSDK(); + _features = _growthBookSDK.features; } /// get the feature flags value from the sdk.