#include "chrome/browser/user_education/user_education_configuration_provider.h"
#include "base/feature_list.h"
#include "base/notreached.h"
#include "base/strings/string_util.h"
#include "components/feature_engagement/public/configuration.h"
#include "components/user_education/common/feature_promo_registry.h"
#include "components/user_education/common/feature_promo_specification.h"
#include "components/user_education/common/user_education_features.h"
namespace {
std::string FeatureNameToEventName(const base::Feature& feature) { … }
}
extern void MaybeRegisterChromeFeaturePromos(
user_education::FeaturePromoRegistry& registry);
UserEducationConfigurationProvider::UserEducationConfigurationProvider()
: … { … }
UserEducationConfigurationProvider::UserEducationConfigurationProvider(
user_education::FeaturePromoRegistry registry_for_testing)
: … { … }
UserEducationConfigurationProvider::~UserEducationConfigurationProvider() =
default;
bool UserEducationConfigurationProvider::MaybeProvideFeatureConfiguration(
const base::Feature& feature,
feature_engagement::FeatureConfig& config,
const feature_engagement::FeatureVector& known_features,
const feature_engagement::GroupVector& known_groups) const { … }
const char*
UserEducationConfigurationProvider::GetConfigurationSourceDescription() const { … }
std::string UserEducationConfigurationProvider::GetDefaultTriggerName(
const base::Feature& feature) { … }
std::string UserEducationConfigurationProvider::GetDefaultUsedName(
const base::Feature& feature) { … }