blob: 9038d40d61c8b52a541b6b3f383258e669888c91 [file] [log] [blame]
// Copyright 2021 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#include "components/autofill_assistant/browser/display_strings_util.h"
#include "ui/base/l10n/l10n_util.h"
namespace autofill_assistant {
namespace {
int MapDisplayStringIdToChromeMessage(
ClientSettingsProto::DisplayStringId display_string_id) {
switch (display_string_id) {
case ClientSettingsProto::UNSPECIFIED:
// Shouldn't happen. Returning default error.
return IDS_AUTOFILL_ASSISTANT_DEFAULT_ERROR;
case ClientSettingsProto::GIVE_UP:
return IDS_AUTOFILL_ASSISTANT_GIVE_UP;
case ClientSettingsProto::MAYBE_GIVE_UP:
return IDS_AUTOFILL_ASSISTANT_MAYBE_GIVE_UP;
case ClientSettingsProto::DEFAULT_ERROR:
return IDS_AUTOFILL_ASSISTANT_DEFAULT_ERROR;
case ClientSettingsProto::PAYMENT_INFO_CONFIRM:
return IDS_AUTOFILL_ASSISTANT_PAYMENT_INFO_CONFIRM;
case ClientSettingsProto::CONTINUE_BUTTON:
return IDS_AUTOFILL_ASSISTANT_CONTINUE_BUTTON;
case ClientSettingsProto::STOPPED:
return IDS_AUTOFILL_ASSISTANT_STOPPED;
case ClientSettingsProto::SEND_FEEDBACK:
return IDS_AUTOFILL_ASSISTANT_SEND_FEEDBACK;
case ClientSettingsProto::CLOSE:
return IDS_CLOSE;
case ClientSettingsProto::SETTINGS:
return IDS_SETTINGS_TITLE;
}
}
} // namespace
const std::string GetDisplayStringUTF8(
ClientSettingsProto::DisplayStringId display_string_id,
const ClientSettings& client_settings) {
auto it = client_settings.display_strings.find(display_string_id);
if (it != client_settings.display_strings.end()) {
// Note that we return the string even if it is empty.
return it->second;
}
return l10n_util::GetStringUTF8(
MapDisplayStringIdToChromeMessage(display_string_id));
}
} // namespace autofill_assistant