#include "components/autofill/core/browser/merchant_promo_code_manager.h"
#include "base/strings/utf_string_conversions.h"
#include "components/autofill/core/browser/browser_autofill_manager.h"
#include "components/autofill/core/browser/data_model/autofill_offer_data.h"
#include "components/autofill/core/browser/metrics/payments/offers_metrics.h"
#include "components/autofill/core/browser/payments_data_manager.h"
#include "components/autofill/core/browser/payments_suggestion_generator.h"
#include "components/autofill/core/browser/personal_data_manager.h"
#include "components/autofill/core/browser/ui/suggestion_type.h"
namespace autofill {
MerchantPromoCodeManager::MerchantPromoCodeManager() = default;
MerchantPromoCodeManager::~MerchantPromoCodeManager() = default;
bool MerchantPromoCodeManager::OnGetSingleFieldSuggestions(
const FormStructure* form_structure,
const FormFieldData& field,
const AutofillField* autofill_field,
const AutofillClient& client,
OnSuggestionsReturnedCallback on_suggestions_returned) { … }
void MerchantPromoCodeManager::OnWillSubmitFormWithFields(
const std::vector<FormFieldData>& fields,
bool is_autocomplete_enabled) { … }
void MerchantPromoCodeManager::OnRemoveCurrentSingleFieldSuggestion(
const std::u16string& field_name,
const std::u16string& value,
SuggestionType type) { … }
void MerchantPromoCodeManager::OnSingleFieldSuggestionSelected(
const Suggestion& suggestion) { … }
void MerchantPromoCodeManager::Init(PersonalDataManager* personal_data_manager,
bool is_off_the_record) { … }
void MerchantPromoCodeManager::UMARecorder::OnOffersSuggestionsShown(
const FieldGlobalId& field_global_id,
const std::vector<const AutofillOfferData*>& offers) { … }
void MerchantPromoCodeManager::UMARecorder::OnOfferSuggestionSelected(
SuggestionType type) { … }
void MerchantPromoCodeManager::SendPromoCodeSuggestions(
std::vector<const AutofillOfferData*> promo_code_offers,
const FormFieldData& field,
OnSuggestionsReturnedCallback on_suggestions_returned) { … }
}