Introduce auto-populated Search Engine icons.

This change is intended to replace the search_engine_choice assets
under //components/resources/.

This change introduces Search Engine assets populated automatically
by Copybara workflow in an effort to deprecate a best-effort, manual
Search Engine icon update process, needed by Search Engine Choice
dialog.

Newly introduced, offline Search Engine assets can be referenced by
the base_builtin_resource_id field.

The `base_builtin_resource_id` field is intentionally a string to
make assets available from webui. The relevant resources (currently
images, but soon also marketing snippets) can be constructed from
the `base_id` and an appropriate suffix.

Change-Id: I9dbad8ca8b05c2184f99743025f945610d01dffa
Bug: 409095783
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/6470924
Reviewed-by: Ted Choc <[email protected]>
Commit-Queue: Tomasz Wiszkowski <[email protected]>
Reviewed-by: Orin Jaworski <[email protected]>
Reviewed-by: Samuel Huang <[email protected]>
Reviewed-by: Nicolas Dossou-Gbété <[email protected]>
Cr-Commit-Position: refs/heads/main@{#1456521}
diff --git a/chrome/browser/resources_util.cc b/chrome/browser/resources_util.cc
index eb57680b..b33ed83 100644
--- a/chrome/browser/resources_util.cc
+++ b/chrome/browser/resources_util.cc
@@ -20,6 +20,9 @@
 #include "components/grit/components_scaled_resources_map.h"
 #include "ui/resources/grit/ui_resources_map.h"
 
+#if !BUILDFLAG(IS_ANDROID)
+#include "third_party/search_engines_data/search_engines_scaled_resources_map.h"
+#endif
 #if BUILDFLAG(IS_CHROMEOS)
 #include "ui/chromeos/resources/grit/ui_chromeos_resources_map.h"
 #endif
@@ -36,6 +39,9 @@
   ThemeMap() {
     size_t storage_size =
         kComponentsScaledResourcesSize + kThemeResourcesSize + kUiResourcesSize;
+#if !BUILDFLAG(IS_ANDROID)
+    storage_size += kSearchEnginesScaledResourcesSize;
+#endif
 #if BUILDFLAG(IS_CHROMEOS)
     storage_size += kUiChromeosResourcesSize;
 #endif
@@ -54,6 +60,12 @@
     for (size_t i = 0; i < kUiResourcesSize; ++i) {
       storage.emplace_back(kUiResources[i].path, kUiResources[i].id);
     }
+#if !BUILDFLAG(IS_ANDROID)
+    for (size_t i = 0; i < kSearchEnginesScaledResourcesSize; ++i) {
+      storage.emplace_back(kSearchEnginesScaledResources[i].path,
+                           kSearchEnginesScaledResources[i].id);
+    }
+#endif
 #if BUILDFLAG(IS_CHROMEOS)
     for (size_t i = 0; i < kUiChromeosResourcesSize; ++i) {
       storage.emplace_back(kUiChromeosResources[i].path,